1、不追加的情况
- 创建一个字节输出流 管道 通向目标文件 路径 ,每次运行都会 先清空之前的数据,写新的数据进入
javapackage com.csdn.d2_byte_stream; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; public class OutputStreamDemo04 { public static void main(String[] args) throws IOException { //1.创建一个文件字节输出流管道与目标文件接通,文件不用创建,自动生成文件 //每次运行都会 先清空之前的数据,写新的数据进入 OutputStream os = new FileOutputStream("src\\hard.txt"); //2.写数据到 hard.txt os.write('a');//a os.write(98);//b os.write('吃');// os.write("\r\n".getBytes()); byte[] buffer = {'a', 97, 98, 99}; os.write(buffer); os.write("\r\n".getBytes()); byte[] buffer2 = "我是中国人".getBytes(); os.write(buffer2); os.write("\r\n".getBytes()); byte[] buffer3 = {'a', 97, 98, 99}; os.write(buffer3, 0, 3); //写数据,必须刷新数据,可以继续使用流 os.flush(); //释放资源,包含了刷新的!关闭后流不可以使用 os.close(); } }
- 无论执行多少次程序,都不会追加, 每次运行都会 先清空之前的数据,写新的数据进入
2、追加的情况
- 创建一个 追加 数据的字节输出流 管道 通向目标文件 路径。
javapackage com.csdn.d2_byte_stream; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; public class OutputStreamDemo04 { public static void main(String[] args) throws IOException { //1.创建一个追加文件字节输出流管道与目标文件接通,文件不用创建,自动生成文件 OutputStream os = new FileOutputStream("src\\hard.txt", true); //2.写数据到 hard.txt os.write('a');//a os.write(98);//b os.write('吃');// os.write("\r\n".getBytes()); byte[] buffer = {'a', 97, 98, 99}; os.write(buffer); os.write("\r\n".getBytes()); byte[] buffer2 = "我是中国人".getBytes(); os.write(buffer2); os.write("\r\n".getBytes()); byte[] buffer3 = {'a', 97, 98, 99}; os.write(buffer3, 0, 3); //写数据,必须刷新数据,可以继续使用流 os.flush(); //释放资源,包含了刷新的!关闭后流不可以使用 os.close(); } }
- 程序执行 3 次,发生追加效果,出现3次结果,不会删除之前的数据
文件字节输出流:写字节数据到文件
丁总学Java2023-09-19 1:01
相关推荐
Ronin3051 小时前
【Qt常用控件】容器类控件和布局管理器菜鸡儿齐3 小时前
Unsafe方法学习汤姆yu3 小时前
IDEA接入Claude Code保姆级教程(Windows专属+衔接前置安装)prince056 小时前
用户积分系统怎么设计96778 小时前
理解IOC控制反转和spring容器,@Autowired的参数的作用SY_FC8 小时前
实现一个父组件引入了子组件,跳转到其他页面,其他页面返回回来重新加载子组件函数啵啵鱼爱吃小猫咪8 小时前
机械臂阻抗控制github项目-mujoco仿真似水明俊德8 小时前
02-C#耀耀_很无聊8 小时前
09_Jenkins安装JDK环境ノBye~8 小时前
Centos7.6 Docker安装redis(带密码 + 持久化)
