文件字节输出流(FileOutputStream)写数据出去的API
public void write(int a) 写一个字节出去
public void write (byte [] buffer) 写一个字节数组出去
public void write (byte[] buffer, int pos ,int len ) 写一个字节数组送出去一部分
流的关闭与刷新
flush() 刷新流 ,还可以继续写数据
close() 关闭流,释放资源,但是在关闭之前先刷新流,一旦关闭,就不能再写数据
字节输出流如何实现数据追加
public FileOutputStream(String filepath,boolean apped) 创建字节输出流管道与源文件路径接通,可以追加数据 第二个参数填写true即可
字节输出流如何实现写出的数据能换行
os.write("\r\n".getBytes()) //getBytes 的功能是转换成字节数组
如何让写出的数据能成功生效?
flush()刷新数据
close() 方法是关闭流,关闭包含刷新,关闭后流不可以继续使用了
package io流;
import java.io.FileOutputStream;
import java.io.OutputStream;
public class Test6 {
public static void main(String[] args) throws Exception {
//覆盖管道,每次创建的时候都会先把之前的内容清空,追加管道在后面加上一个true以前的内容就不会被清空
OutputStream o=new FileOutputStream("src/aaa.txt",true); //这个文件可以没有,程序会自动帮你创建
o.write('a');
o.write(97);
// o.write('陈');//只能一个字节,中文就直接乱码了
//把数组的内容传输到文件
byte[] arr= {'w','c',97};
o.write(arr);
o.write("\r\n".getBytes()); //换行
byte[] arr1= "我爱学习".getBytes(); //汉子无法直接流到文件,但可以转换为字符流过去
o.write(arr1);
//还可以写指定的个数
byte[] arr3= {'w','c',97};
o.write(arr3,0,2);
//o.flush();//写入数据必须刷新数据,可以继续使用流
o.close();//释放资源,包含刷新的,关闭后就不可以使用了
}
}