当前位置: 首页 > news >正文

输出流-----超级详细的在程序中向文件.txt中写入内容

1.使用Fileoutputstream对象,如果在目录中已经存在该文件,那么将不会在创建,如果该目录中没有该文件,那么将会自动创建文件。

        

2.在目录中a.txt文件中写入一个h字符,这种方式是写入单个字符。
        //在目录中a.txt文件中写入一个h字符
        String path = "d:\\a.txt";
        FileOutputStream fileOutputStream = new FileOutputStream(path);
        fileOutputStream.write('h');

                ​​​​​​​        

3.如果想写入一个字符串内容,那么可以使用字符数组的形式传进去内容

        //在目录中a.txt文件中写入一个h字符
        String path = "d:\\a.txt";
        String content = "hello world";
        FileOutputStream fileOutputStream = new FileOutputStream(path);
        //通过getBytes()方法将字符串转换为字节数组
        fileOutputStream.write(content.getBytes());

            ​​​​​​​        ​​​​​​​        

4.还有另外一种方式,可以添加一个字符串内容

        //在目录中a.txt文件中写入一个h字符
        String path = "d:\\a.txt";
        String content = "hello world";
        FileOutputStream fileOutputStream = new FileOutputStream(path);
        //通过getBytes()方法将字符串转换为字节数组
        //使用字节数组写入文件(字符数组 , 从第几个字符开始, 长度为几个 )
        fileOutputStream.write(content.getBytes(),0,content.length());

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

修改一下索引的值,然后看一下结果

        //在目录中a.txt文件中写入一个h字符
        String path = "d:\\a.txt";
        String content = "hello world";
        FileOutputStream fileOutputStream = new FileOutputStream(path);
        //通过getBytes()方法将字符串转换为字节数组
        //使用字节数组写入文件(字符数组 , 从第几个字符开始, 长度为前几个 )
        fileOutputStream.write(content.getBytes(),0,5);

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

5.但是你们发现了没有,如果这样添加值,前面的值会被覆盖掉,如果说不想被覆盖掉,要在

FileOutputStream fileOutputStream = new FileOutputStream(path,true);添加一个true。
        //在目录中a.txt文件中写入一个h字符
        String path = "d:\\a.txt";
        String content = "hello world";
        FileOutputStream fileOutputStream = new FileOutputStream(path,true);
        //通过getBytes()方法将字符串转换为字节数组
        //使用字节数组写入文件(字符数组 , 从第几个字符开始, 长度为前几个 )
        fileOutputStream.write(content.getBytes(),0,5);

看结果:

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

在运行一次程序,看结果:

        ​​​​​​​        ​​​​​​​        ​​​​​​​        

此时会发现,前面的值没有被覆盖掉。

总结:在开发中,一般会用后面两种方式。

相关文章:

  • 【挠头写算法系列】质疑分治,理解分治,到分治真香
  • STL之迭代器(iterator)
  • case客户续保预测中用到的特征工程、回归分析和决策树分析的总结
  • 监控相关信息 - 留档备查
  • 计算机体系结构之指令体系结构
  • Ubuntu虚拟机Linux系统入门
  • 从能量守恒的角度理解自然现象与社会现象
  • 【C语言】结构体 (深入)
  • python | tracemalloc模块,跟踪内存分配情况
  • 【时时三省】(C语言基础)选择结构程序综合举例2
  • 浅淡红黑树以及其在Java中的实际应用
  • 【ACM MM会议-2024工业异常检测】FiLo++:融合细粒度描述和形变定位的零样本/少样本异常检测
  • IO多路复用沉浸式体验
  • OpenAI Gym 提供了丰富的强化学习测试环境
  • 并发阻塞队列原理分析
  • 用户自定义函数(UDF)开发与应用(二)
  • 快速幂运算
  • 阅读论文 smart pretrain,搭配MAE一起食用
  • Elasticsearch 性能优化:从原理到实践的全面指南
  • Elasticsearch入门指南(三) 之 高级篇
  • 在古老的意大利科莫歌剧院,廖昌永唱响16首中国艺术歌曲
  • 【社论】公平有序竞争,外卖行业才能多赢
  • “典孝急乐批麻蚌赢”:互联网“八字真言”与当代赛博赢学
  • 国内首家破产的5A景区游客爆满,洛阳龙潭大峡谷:破产并非因景观不好
  • 加拿大新政府宣誓就职
  • 乌方:泽连斯基只接受与普京会谈,拒见其他俄代表