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

Java函数如何实现文件输入输出操作?

发布时间:2023-05-24 17:02:53

在Java中,文件输入输出操作是常见的一种操作,它是实现数据持久化的一种方式,常用于读写配置文件、日志文件、数据库文件等。在Java中,主要有以下几种方式来实现文件的输入输出操作:

1.使用FileInputStream和FileOutputStream类

使用FileInputStream和FileOutputStream类可以实现对文件的读写操作。这两个类都是JAVA I/O包中的输入输出类,FileInputStream用于读取文件内容,FileOutputStream用于向文件中写入数据。

下面是一个使用FileInputStream和FileOutputStream类进行文件读写操作的例子:

//读取文件
FileInputStream fis = new FileInputStream("D:/test.txt");
int c;
while ((c = fis.read()) != -1) {
    System.out.print((char) c);
}
fis.close();

//写入文件
FileOutputStream fos = new FileOutputStream("D:/test.txt");
String str = "这是一段文本内容";
byte[] bytes = str.getBytes();
fos.write(bytes);
fos.flush();
fos.close();

2.使用BufferedReader和BufferedWriter类

使用BufferedReader和BufferedWriter类可以实现高效的文件读写操作,它们是Java I/O包中的缓存类。BufferedReader用于读取文件内容,BufferedWriter用于向文件中写入数据。

下面是一个使用BufferedReader和BufferedWriter类进行文件读写操作的例子:

//读取文件
BufferedReader reader = new BufferedReader(new FileReader("D:/test.txt"));
String line;
while ((line = reader.readLine()) != null) {
    System.out.println(line);
}
reader.close();

//写入文件
BufferedWriter writer = new BufferedWriter(new FileWriter("D:/test.txt"));
writer.write("这是一段文本内容");
writer.flush();
writer.close();

3.使用Scanner和PrintWriter类

使用Scanner和PrintWriter类可以实现对文件的快速读写操作,它们也是Java I/O包中的输入输出类。Scanner用于读取文件内容,PrintWriter用于向文件中写入数据。

下面是一个使用Scanner和PrintWriter类进行文件读写操作的例子:

//读取文件
Scanner scanner = new Scanner(new File("D:/test.txt"));
while (scanner.hasNextLine()) {
    String line = scanner.nextLine();
    System.out.println(line);
}
scanner.close();

//写入文件
PrintWriter writer = new PrintWriter(new FileWriter("D:/test.txt"));
writer.println("这是一段文本内容");
writer.close();

无论是使用FileInputStream和FileOutputStream类、BufferedReader和BufferedWriter类,还是Scanner和PrintWriter类,它们都可以实现对文件的输入输出操作,而使用哪种方式,取决于实际的需求和使用场景。