CODE
import java.io.*;
class tester {
public static void main(String args[]) {
try {
FileReader reader = new FileReader(new File("d:\\UnderTest\\check123.txt"));
FileWriter writer = new FileWriter(new File("d:\\UnderTest\\check123.txt"));
BufferedReader br = new BufferedReader(reader);
String s;
while( (s=br.readLine()) != null ) {
System.out.println(s);
}
writer.write("Shadow Shadow");
} catch(Exception exc) {
System.out.println(exc);
}
}
}
当我运行它时,这段代码什么都不写,什么都不读。这个程序中的错误在哪里?
答案 0 :(得分:2)
您确定第一次阅读时文本文件中是否有内容? 您需要在try-catch块的finally块(当前缺少代码中)中关闭Reader和Writer。关闭流会自动刷新内容。
答案 1 :(得分:1)
确保关闭阅读器和编写器。使用编写器后,您需要刷新内容或关闭编写器(执行相同的操作)。我测试了这个并且它有效。
import java.io.*;
class tester {
public static void main(String args[]) {
try {
FileReader reader = new FileReader(new File("c:\\check123.txt"));
FileWriter writer = new FileWriter(new File("c:\\check123.txt"));
BufferedReader br = new BufferedReader(reader);
writer.write("Shadow Shadow");
writer.close();
String s;
while( (s=br.readLine()) != null ) {
System.out.println(s);
}
reader.close();
} catch(Exception exc) {
System.out.println(exc);
}
}
}