使用 FileReader 和 FileWriter 进行 Java 中的文件处理


Java 字节流用于执行 8 位字节的输入和输出,而 Java 字符流用于执行 16 位 Unicode 的输入和输出。尽管有许多与字符流相关的类,但最常用的类是 FileReaderFileWriter。尽管在内部 FileReader 使用 FileInputStream,而 FileWriter 使用 FileOutputStream,但这里的主要区别在于 FileReader 一次读取两个字节,而 FileWriter 一次写入两个字节。

以下示例使用这两个类将一个输入文件(具有 Unicode 字符)复制到一个输出文件中 −

示例

import java.io.*;
public class CopyFile {

   public static void main(String args[]) throws IOException {

      FileReader in = null;
      FileWriter out = null;

      try {
         in = new FileReader("input.txt");
         out = new FileWriter("output.txt");

         int c;
         while ((c = in.read()) != -1) {
            out.write(c);
         }
      } finally {
         if (in != null) {
            in.close();
         }
         if (out != null) {
            out.close();
         }
      }
   }
}

现在让我们创建一个文本文件 input.txt,内容如下 −

This is test for copy file.

作为下一步,编译以上程序并执行,这将导致创建一个与 input.txt 中的内容相同的 output.txt 文件。因此,让我们将以上代码放入 CopyFile.java 文件中,并执行以下操作 −

输出

$javac CopyFile.java
$java CopyFile

更新于: 21-Jun-2020

1K+ 查看次数

开启你的职业生涯

完成课程获得认证

开始
广告