问一个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)?
可以看到,点一次运行会写一首诗,但是点第二次运行的时候会覆盖第一次写的内容。有什么办法能让第一次写的内容保存,第二次运行的时候再第一次运行写完的结尾回车换行接着写?
展开
 我来答
正直气冲天0
2015-05-26 · 超过47用户采纳过TA的回答
知道答主
回答量:333
采纳率:0%
帮助的人:98.2万
展开全部
public FileWriter(File file,
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);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式