InputStream、OutputStream操作的是字节。 (字节可以根据编码表转成字符)
Writer、Reader只能操作字符、文本。
Demo.java:
package cn.xxx.demo;
import java.io.FileWriter;
import java.io.IOException;
/*
* 字符输出流
* java.io.Writer 所有字符输出流的超类
* 写文件,写文本文件
*
* 写的方法 write
* write(int c) 写1个字符
* write(char[] c)写字符数组
* write(char[] c,int,int)字符数组一部分,开始索引,写几个
* write(String s) 写入字符串
*
* Writer类的直接 已知子类 FileWriter
*
* 字符输出流写数据的时候,必须要刷新
* flush()
*/
public class Demo {
public static void main(String[] args) throws IOException{
FileWriter fw = new FileWriter("c:\\1.txt"); // 创建字符输出流对象。 构造函数可以传字符串也可以传File对象。
//写1个字符
fw.write(100);
fw.flush(); // 刷新,从内存刷入磁盘。
//写多个字符 (字符数组)
char[] c = {'a','b','c','d','e'};
fw.write(c);
fw.flush();
//写字符数组的一部分
fw.write(c, 2, 2); // 索引 长度
fw.flush();
//写入字符串
fw.write("hello");
fw.flush();
fw.close();
}
}