问一个java FileWriter的小问题
packagetestIO;importjava.io.*;publicclassFileWriterTest{publicstaticvoidmain(String[]...
package testIO;
import java.io.*;
public class FileWriterTest
{
public static void main(String[] args)
{
try(
FileWriter fw = new FileWriter("poem.txt"))
{
fw.write("锦瑟 - 李商隐\r\n");
fw.write("锦瑟无端五十弦,一弦一柱思华年。\r\n");
fw.write("庄生晓梦迷蝴蝶,望帝春心托杜鹃。\r\n");
fw.write("沧海月明珠有泪,蓝田日暖玉生烟。\r\n");
fw.write("此情可待成追忆,只是当时已惘然。\r\n");
}
catch (IOException ioe)
{
ioe.printStackTrace();
}
}
}
代码的最后为什么不关闭文件(.close)?
可以看到,点一次运行会写一首诗,但是点第二次运行的时候会覆盖第一次写的内容。有什么办法能让第一次写的内容保存,第二次运行的时候再第一次运行写完的结尾回车换行接着写? 展开
import java.io.*;
public class FileWriterTest
{
public static void main(String[] args)
{
try(
FileWriter fw = new FileWriter("poem.txt"))
{
fw.write("锦瑟 - 李商隐\r\n");
fw.write("锦瑟无端五十弦,一弦一柱思华年。\r\n");
fw.write("庄生晓梦迷蝴蝶,望帝春心托杜鹃。\r\n");
fw.write("沧海月明珠有泪,蓝田日暖玉生烟。\r\n");
fw.write("此情可待成追忆,只是当时已惘然。\r\n");
}
catch (IOException ioe)
{
ioe.printStackTrace();
}
}
}
代码的最后为什么不关闭文件(.close)?
可以看到,点一次运行会写一首诗,但是点第二次运行的时候会覆盖第一次写的内容。有什么办法能让第一次写的内容保存,第二次运行的时候再第一次运行写完的结尾回车换行接着写? 展开
展开全部
public FileWriter(File file,
boolean append)
throws IOException
根据给定的 File 对象构造一个 FileWriter 对象。如果第二个参数为
true,则将字节写入文件末尾处,而不是写入文件开始处。
参数:
file - 要写入数据的 File 对象
append - 如果为 true,则将字节写入文件末尾处,而不是写入文件开始处
boolean append)
throws IOException
根据给定的 File 对象构造一个 FileWriter 对象。如果第二个参数为
true,则将字节写入文件末尾处,而不是写入文件开始处。
参数:
file - 要写入数据的 File 对象
append - 如果为 true,则将字节写入文件末尾处,而不是写入文件开始处
更多追问追答
追问
不是我的问题吧。。。
追答
看的有点快。。。
你问不关闭文件?因为你没有写呀。。。可以catch完了之后直接写,也可以写在finally里,建议后者
finally {
try {
if (fw != null)
fw.close();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
第二个问题不是在文件后追加吗。。
fw = new FileWriter("poem.txt",true);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询