操作本地文件的字节输出流,可以把程序中的数据写到本地文件中。
1.写入数据的三种方法
- void write(int b):一次写一个字节数据
- void write(byte[ ] b):一次写一个字节数组数据
- void write(byte[] b, int off, int len):一次写一个字节数组的部分数据
第一个参数off表示初始索引,第二个参数表示数据长度。
案例1:
FileOutputStream fos = new FileOutputStream("G:\\JavaReview\\day31\\my.txt");//一次写一个字节数据fos.write(97);//afos.write(98);//b//一次写一个数组byte[] bytes = {97,98,99,100,101};//abcdefos.write(bytes);//写入部分数据fos.write(bytes,0,3);//abcfos.close();
2.换行写入
不用操作系统的换行命令:
1.windows:\r\n
2.Linux: \n
3.Mac: \r
细节:
在windows操作系统当中,java对回车换行进行了优化。虽然完整的是\r\n,但是我们写其中一个\r或者\n,java也可以实现换行,因为java在底层会补全。
3.续写
如果想要续写,打开续写开关即可开关位置:创建对象的第二个参数 。
默认false:表示关闭续写,此时创建对象会清空文件。
手动传递true:表示打开续写,此时创建对象不会清空文件。
案例2:
FileOutputStream fos = new FileOutputStream("G:\\JavaReview\\day31\\my.txt",true);//String str = "kanguanlaoyezhenshuai";byte[] bytes = str.getBytes();fos.write(bytes);//换行符String str2 = "\r\n";byte[] bytes1 = str2.getBytes();fos.write(bytes1);//追加字符String str3 = "666";byte[] bytes2 = str3.getBytes();fos.write(bytes2);fos.close();