讲解字符流写数据的五种方法
void write(int i ) ; 一次写入一个字符
void write(char[] cha) ; 一次写入一个字符数组
void write(char[] cha , int off , int len) ; 一次写入一个字符数组的一部分
void write(String s ) ; 一次写一个字符串
void write(String s , int off , int len ) ; 一次写一个字符串的一部分
flush() 刷新流 将缓冲区里面的数据刷到 文件里面去 刷新以后还可以再写数据
close() 释放资源 内置了一个刷新的操作但是释放资源以后就不能在写数据了
public static void main(String[] args) throws IOException {
//创建字节输出流对象
FileOutputStream fos = new FileOutputStream("C:\\Users\\Administrator\\IdeaProjects\\Day07\\a.txt" ,true);
//参数代true是实现追加数据
//创建字符输出流对象
OutputStreamWriter osm = new OutputStreamWriter(fos); //使用默认的编码格式
//1 一次写一个字符数据
osm.write(97);
/*
我们在使用字节输出流的时候写入的数据是先放到了一个缓冲区里面了 所以我们是看不到数据的 需要再flush一下
当然你在使用close方法的时候 也会进行一个flush操作 所以上次没使用flush方法还是看到了数据
*/
//2 一次写入一个字符数组
char ch[] = "天青色等烟雨,而我在等你\r\n".toCharArray();
osm.write(ch);
//3 一次写入一个字符数组的一部分
osm.write(ch,0,3);
//4 一次写入一个字符串
String s = "我爱java\r\n";
osm.write(s);
//5 一次写入一个字符串的一部分
osm.write(s,0,5);
//刷数据
osm.flush();
//释放资源
osm.close();
}