10.Java中的IO流(一)——字符流与字节流【Java学习笔记Hatter】Java开发工程师
System.out.println(e.toString());
} catch (IOException e) {" src="http://fishcooimg.chinazspeed.com/2017/03/1489132234001.png" title="Java中的IO流(一)——字符流与字节流.png" alt="Java中的IO流(一)——字符流与字节流.png"/>
一、IO流
1.IO流:用来处理设备之间的数据传输。
按操作数据分为:字节流和字符流。
按流向分为:输入流,输出流。
2.字节流的抽象基类
字符流的抽象基类
Reader,Writer。
专门用于操作文件的Writer子类对象FileWriter
这些体系的子类都以父类名作为后缀。
而且子类名的前缀就是该对象的功能。
二、字符流:
FileReader
FileWriter
BufferedReader
BufferedWriter
1.close()关闭流资源,但是关闭之前会帅新一次内部的缓冲区.
close()和flush()/区别:flush刷新后,流可以继续使用,close是刷新后,并且关闭了流.
2.字符流的续写
FileWriter(String fileName,boolean append):值为true的时候,将数据写入文件数据的末尾处。
例:
public class FileWriterDemo {
public static void main(String[] args) {
/*传递一个true参数,代表不覆盖已有的文件,并在已有的文件末尾处进行数据的续写*/
FileWriter fw=null;
try {
fw = new FileWriter("Demo.txt",true);
fw.write("haha/r/nhh/r/njava");
} catch (IOException e) {
System.out.println(e.toString());
}
finally{
try {
if(fw!=null)
fw.close();
} catch (IOException e) {
System.out.println(e.toString());
}
}
}
}
3.创建一个文件读取流对象,和指定名称的文件相关联,要保证该文件是已经存在的。
(1)read()方法:读取流对象,一次读取一个字符并会自动往下读.
例:
public class FileReaderDemo {
public static void main(String[] args) {
FileReader fr=null;
try {
fr=new FileReader("Demo.txt");
int ch=0;
while((ch=fr.read())!=-1){
System.out.print((char)ch);
} catch (FileNotFoundException e) {


1914篇文章