欢迎访问宙启技术站
智能推送

如何在Java中使用文件函数创建、读取和写入文件?

发布时间:2023-06-12 20:11:18

在Java中,文件操作是很常见的操作,如文件的创建、读取和写入。文件操作主要包括两个方面:文件路径的处理和文件流的操作。

1. 文件路径的处理

在Java中,文件路径有两种表达方式:绝对路径和相对路径。其中,绝对路径是从根目录开始的完整路径,相对路径是从当前目录开始的路径。

文件路径的处理涉及到的类主要有:

- File类:用于遍历文件系统中的文件和目录,并访问它们的属性。

- Path类:用于操作文件或目录的路径。它的实例包含着路径的一些元素,如路径的根目录、文件名、父目录、文件夹名等。

创建文件路径

创建File类实例时,需要传入路径参数。如果是相对路径,则会考虑当前工作目录,如果是绝对路径,则直接引用该路径。

例如:

File file = new File("file.txt");         //相对路径
File file = new File("c:/dev/file.txt");  //绝对路径

读取文件路径

可以通过File类中的getPath()方法获取文件路径,该方法返回一个字符串,代表该对象的路径。

例如:

File file = new File("file.txt");
String filePath = file.getPath();
System.out.println(filePath);

写入文件路径

可以通过File类的构造函数创建一个File实例,并指定文件路径。之后,可以使用File类的一些方法创建、删除、重命名文件等操作。

例如:

File file = new File("file.txt");
if (!file.exists()) {  // 如果文件不存在就创建一个
    file.createNewFile();
}

2. 文件流的操作

在Java中,文件流是在程序与文件系统之间传输数据的方式。Java提供了以下四种文件流:

- FileInputStream:读取文件内容的输入流。

- FileOutputStream:向文件输出数据的输出流。

- FileReader:读取字符文件内容的输入流。

- FileWriter:向字符文件输出数据的输出流。

创建文件流

创建文件流之前需要先创建File对象。创建文件流有两种方式:

- 以字节为单位读写文件:使用FileInputStream和FileOutputStream。

- 以字符为单位读写文件:使用FileReader和FileWriter。

例如:

// 以字节为单位读写文件
FileInputStream fis = new FileInputStream("file.txt");
FileOutputStream fos = new FileOutputStream("newFile.txt");

// 以字符为单位读写文件
FileReader fr = new FileReader("file.txt");
FileWriter fw = new FileWriter("newFile.txt");

读取文件流

通过read()方法调用读取文件内容,最后关闭文件输入流。

例如:

// 以字节为单位读写文件
FileInputStream fis = new FileInputStream("file.txt");
int n;
while ((n = fis.read()) != -1) {
    System.out.print((char) n);
}
fis.close();

// 以字符为单位读写文件
FileReader fr = new FileReader("file.txt");
int n;
while ((n = fr.read()) != -1) {
    System.out.print((char) n);
}
fr.close();

写入文件流

在Java中,可以通过write()方法向文件输出数据,最后关闭文件输出流。

例如:

// 以字节为单位读写文件
FileOutputStream fos = new FileOutputStream("newFile.txt");
for (byte b : "hello world".getBytes()) {
    fos.write(b);
}
fos.close();

// 以字符为单位读写文件
FileWriter fw = new FileWriter("newFile.txt");
fw.write("hello world");
fw.close();

总结

Java中文件操作包括文件路径的处理和文件流的操作,其中文件路径的处理涉及到File类和Path类,文件流的操作包括作为输入流和输出流的四个抽象类FileInputStream、FileOutputStream、FileReader和FileWriter。对于文件流操作,需要按照如下四个步骤进行:

1. 创建文件流。

2. 读取文件内容或写入数据到文件。

3. 关闭文件流。

4. 处理异常。