EE】File类的用法和InputStream、OutputStream的用法"/>
【Java EE】File类的用法和InputStream、OutputStream的用法
在Java中,File类和InputStream、OutputStream是常用的输入输出相关的类,他们在文件的读写和处理方面有着广泛的应用。
1.File类的用法
File类用于表示文件或者目录的路径名。它提供了许多方法来操作文件或目录,包括创建、删除、重命名、修改文件或者目录等等。
以下是File类的常用属性、构造方法以及方法:
修饰符以及类型 | 属性 | 说明 |
---|---|---|
static String | pathSeparator | 依赖于系统的路径分隔符,String类型的表示 |
static char | pathSeparator | 依赖于系统的路径分隔符,char类型的表示 |
签名 | 说明 |
---|---|
File(File parent,String child) | 根据父目录+孩子文件路径,创建一个新的File实例 |
File(String pathname) | 根据文件路径创建一个新的File实例,路径可以是绝对路径或者相对路径 |
File(String parent,String child) | 根据父目录+孩子文件路径,创建一个新的File实例,父目录用路径表示 |
修饰符及返回值类型 | 方法签名 | 说明 |
---|---|---|
String | getParent() | 返回File对象的父目录文件路径 |
String | getName() | 返回File对象的纯文件名称 |
String | getPath() | 返回File对象的文件路径 |
String | getAbsolutePath() | 返回File对象的绝对路径 |
String | getCanonicalPath() | 返回File对象的修饰过的绝对路径 |
boolean | exists() | 判断File对象描述的文件是否真实存在 |
boolean | isDirectory() | 判断File对象代表的文件是否是一个目录 |
boolean | isFile() | 判断File对象代表的文件是否是一个普通文件 |
boolean | createNewFile() | 根据File对象,自动创建一个空文件。成功创建后返回true |
boolean | delect() | 根据File对象,删除该文件,成功删除后返回true |
void | deleteOnExit() | 根据File对象,标注文件将被删除,删除动作会到jvm运行结束时才会结束 |
String[] | list() | 返回File对象代表的目录下的所有文件名 |
File[] | listFiles() | 返回File对象代表的目录下的所有文件,以File对象表示 |
boolean | mkdir() | 创建File对象代表的目录 |
boolean | mkdirs() | 创建File对象代表的目录,如果必要,会创建之间目录 |
boolean | rename To(File dest) | 进行文件改名,也可以视为我们平时的剪切、粘贴操作 |
boolean | canRead() | 判断用户是否对文件有可读权限 |
boolean | canWeite() | 判断用户是否对文件有可写权限 |
代码示例:
File file = new File("C:\\test.txt");
if (file.createNewFile()) { System.out.println("File created successfully.");
} else { System.out.println("File already exists.");
}
file.delete();
2.InputStream、OutputStream的用法
InputStream、OutputStream 是 Java中最基本的输入输出流,它们是所有输入输出流的根类。InputStream 表示输入流,用于从输入流中读取数据;OutputStream 表示输出流,用于将数据写入输出流。
以下是 InputStream 和 OutputStream 常用的方法:
int read():从输入流中读取一个字节的数据,并返回读取的字节值,如果已经到达文件末尾,则返回 -1。
int read(byte[] b): 从输入流中读取指定长度的字节数据,存储到指定的字节数组中,并返回实际读取的字节数,如果已经到达文件末尾,则返回 -1。
long skip(long n):跳过输入流中的指定字节数,并返回实际跳过的字节数。
void write(int b) :将一个字节的数据写入输出流。
void write(byte[] b): 将指定长度的字节数据写入输出流。
代码示例:
InputStream inputStream = new FileInputStream("C:\\test.txt");
byte[] buffer = new byte[1024];
int length = inputStream.read(buffer);
while (length != -1) { System.out.print(new String(buffer, 0, length)); length = inputStream.read(buffer);
}
inputStream.close();
更多推荐
【Java EE】File类的用法和InputStream、OutputStream的用法
发布评论