Java通过BufferedWriter写入后需覆盖原有内容

编程入门 行业动态 更新时间:2024-10-07 03:29:20

Java通过BufferedWriter写入后需覆盖原有<a href=https://www.elefans.com/category/jswz/34/1771374.html style=内容"/>

Java通过BufferedWriter写入后需覆盖原有内容

io流写入数据通过new FileWriter("myfile\\b.txt",false)第二参数传入false就可以在每次写入是覆盖原有内容吗,答案否定的!

public class MyBufferTest1 {public static void main(String[] args) throws IOException {//创建字符缓冲输出流对象BufferedWriter bos = new BufferedWriter(new FileWriter("myfile\\b.txt"));ArrayList<Integer> a = new ArrayList<>();a.add(1);a.add(2);a.add(3);for (Integer i : a) {//写入数据bos.write(String.valueOf(i));bos.flush();}//释放资源bos.close();}
}

运行后的文件存储为:123

如果io写入都会覆盖原有数据,那么最后一次输入因为只有一个3,所以该覆盖原有数据的时机只在第一次io写入的时候.所以,想要实现每次写入都会覆盖原有数据,可以在每次写入数据时,都重新new 一个io写入流对象,代码如下:

public class MyBufferTest1 {public static void main(String[] args) throws IOException {//创建字符缓冲输出流对象ArrayList<Integer> a = new ArrayList<>();a.add(1);a.add(2);a.add(3);for (Integer i : a) {BufferedWriter bos = new BufferedWriter(new FileWriter("myfile\\b.txt"));//写入数据bos.write(String.valueOf(i));bos.flush();//释放资源bos.close();}}
}

执行结果,文件数据: 3

更多推荐

Java通过BufferedWriter写入后需覆盖原有内容

本文发布于:2024-02-28 01:54:56,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1767580.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:内容   Java   BufferedWriter

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!