我正在将文件路径传递给此方法,该方法写入 txt 文件。但是当我运行这个程序时,它并没有写完整,我不知道我哪里出错了。
public void content(String s) {
try {
BufferedReader br=new BufferedReader(new FileReader(s));
try {
String read=s;
while((read = br.readLine()) != null) {
PrintWriter out = new PrintWriter(new FileWriter("e:\\OP.txt"));
out.write(read);
out.close();
}
} catch(Exception e) { }
} catch(Exception e) { }
}
最佳答案
你不应该每次都在循环中创建你的 PrintWriter:
public void content(String s) {
BufferedReader br=new BufferedReader(new FileReader(s));
try {
PrintWriter out=new PrintWriter(new FileWriter("e:\\OP.txt"));
String read=null;
while((read=br.readLine())!=null) {
out.write(read);
}
} catch(Exception e) {
//do something meaningfull}
} finally {
out.close();
}
}
此外,正如其他人提到的那样,添加一个 finally block ,不要默默地捕获异常,并遵循 Java 编码约定。
关于java - 用 Java 写入文件。帮我打码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14504540/