如何用java写入txt,每次运行都覆盖前一次的内容(多行数据)

如何用java写入txt,每次运行都覆盖前一次的内容(多行数据),第1张

Java使用FileWriter实现文件的写入,用法为:FileWriter(file,true)其中第二个参数设置成false就是覆盖写入,true就是增量存储。举例代码:

import java.io.File

import java.io.FileWriter

import java.io.IOException

public class File01Demo {

    public static void main(String[] args) throws IOException {

        File file = new File("D:\\a.txt")

        FileWriter fw = new FileWriter(file,true) //设置成true就是追加

        fw.write("asd")

        fw.write("\r\n")

        fw.write("ffd")

        fw.close()

    }

}

之前已经覆盖的是无法找回了,建议楼主下次可以采用FileOutputStream:

/**

* 追加文件:使用FileOutputStream,在构造FileOutputStream时,把第二个参数设为true 为追加内容

*

* @param fileName

* @param content

*/

public   static   void  method1(String file, String conent) {

BufferedWriter out = null

try  {

out = new  BufferedWriter( new  OutputStreamWriter(

new  FileOutputStream(file,  true )))

out.write(conent)

} catch  (Exception e) {

e.printStackTrace()

} finally  {

try  {

out.close()

} catch  (IOException e) {

e.printStackTrace()

}

}

}      

或者使用字符流的

FileWriter(String fileName, boolean append)

构造一个FileWriter对象,第二个参数为给出一个带有布尔值的参数,表示是否追加写入的数据。

望采纳 谢谢!

解决方案

你的意思就是不覆盖之前的内容,追加写到文件里面  那就FileWriter a=new FileWriter("d:/as.txt")改成 FileWriter a=new FileWriter("d:/as.txt",true)

补充:Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11567641.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存