从数据流向分为: 输入流 和 输出流. (参考物是内存)
从处理的数据类型分为: 字符流和字节流
最顶层: 字符流: Reader 和 Writer . 字节流: InputStream 和 OutputStream
一. 字符流:
字符流,在平时操作文本的时候,非常有用, 这里采用的unicode编码.
举例:
Writer : 在它的下面,有FileWriter
FileWriter fw= new FileWriter("text.txt");//这里必须指明目标的文件名,如果该路径下面没有,会自动创建,有的话,会被覆盖, 如果想要在已存在的文件中继续添加,则需要:new对象的时候,加上true,如:FileWriter fr=new FileWriter("text.txt",true);
fw.write("填写对应的字符串.....aaaaa");
//最后千万别忘记关掉流,以免造成内存泄露
fw.close();
上面是写的操作,下面开始是Reader的 FileReader
Reader fr=new FileReader("text.txt");
int ch=0;
//这里返回的是一个int .所以用int接收, 每次只读一个字符,然后指针从当前位置指向下一个, 因为 这里的值是在0到65535.所以当指向的值不存在是, 用-1 来表示已经找不到值了,
while((ch=fr.read())!=-1){
System.out.print((char)ch );//打印, 因为读取到的是unicode编码,所以要强转下
}
fr.close();
///--------------------------------------先写到这里,下次写 手动缓存和 BufferedReader和BufferedWriter-----------------------------------------