
与基于字节的流不同,在 java 中使用字符流进行文件 i/o 操作主要用于操作 unicode 文本。像 filereader 和 filewriter 这样的类可以方便地使用文本文件进行此操作。
使用 filewriter
filewriter 类允许您创建 writer 对象来写入文件。它的主要构造函数有:
filewriter(string nomearquivo) throws ioexception filewriter(string nomearquivo, boolean incluir) throws ioexception
- filename:表示文件的完整路径。
- include:定义是否将写入内容添加到文件末尾(true)或是否覆盖现有文件(false)。
下面是一个简单程序的示例,它从键盘读取文本行并将其写入名为“test.txt”的文件。阅读将继续,直到用户输入“停止”。
import java.io.*;
class KtoD {
public static void main(String args[]) {
String str;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
System.out.println("Enter text ('stop' to quit).");
try (FileWriter fw = new FileWriter("test.txt")) {
do {
System.out.print(": ");
str = br.readLine();
if (str.compareTo("stop") == 0) break;
str = str + "\r\n"; // adiciona nova linha
fw.write(str);
} while (str.compareTo("stop") != 0);
} catch(IOException exc) {
System.out.println("I/O Error: " + exc);
}
}
}
在此示例中:
- bufferedreader 从控制台读取文本行。
- filewriter 将文本写入文件“test.txt”,在每个条目后添加一个新行。
- 停止条件:当用户输入“停止”时,录音停止。
将 filewriter 与 bufferedreader 结合使用可以简化在文件中写入文本和操作数据,特别是在连续和国际化的文本操作中。










