加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 而不是重写新文件被创建

发布时间:2020-12-15 04:11:54 所属栏目:Java 来源:网络整理
导读:我正在尝试写入已存在的文件.据我在论坛上看到,这段代码应该重写旧文件,但不是重写,而是将文件名放入[]括号中并创建一个新文件.任何的想法? try { File file = new File("/home/erik/glassfish3/" + selectedMss + ".ini"); BufferedWriter output = new Bu
我正在尝试写入已存在的文件.据我在论坛上看到,这段代码应该重写旧文件,但不是重写,而是将文件名放入[]括号中并创建一个新文件.任何的想法?

try {
   File file = new File("/home/erik/glassfish3/" + selectedMss + ".ini");
   BufferedWriter output = new BufferedWriter(new FileWriter(file));
   for (String newline : content) {
     output.write(newline + "n");
   }
   output.close();
 } catch (IOException e) {
   e.printStackTrace();
 }

解决方法

FileWriter类有一个构造函数,它接受第二个布尔参数,该参数指定编写器是否应该使用追加模式,该模式会将新内容附加到现有文件的末尾.

我还建议在finally块中关闭writer.

Documentation

BufferedWriter output;
try {                
    File file = new File("/home/erik/glassfish3/"+selectedMss+".ini");

    //Providing true for second argument specifies it should be appended. 
    output = new BufferedWriter(new FileWriter(file,true));

    for(String newline: content){
        output.write(newline+"n");      
    }

} catch ( IOException e ) {
       e.printStackTrace();
}finally{
  output.close();
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读