前面的八篇文章詳細的講述了Java IO的操做方法,文章列表以下java
基本的文件操做git
字符流和字節流的操做github
內存操做流code
管道流ip
打印流內存
System對IO的支持get
字節流的操做都是基於
InputStream
和OutputStream
這兩個抽象類io
InputStream
是字節輸入流,主要的功能是從文件中讀取數據,它的子類有內存操做流ByteArrayInputStream
,管道輸入流PipedInputStream
,和FileInputStream
OutputStream
是字節輸出流,主要功能是向文件中寫入數據,它的經常使用的子類有ByteArrayOutputStream
,FileOutputStream
,PipedOutputStream
,PrintStream
字符流的操做都是基於家
Writer
和Reader
這兩個抽象類的,一個是輸出流,一個是輸入流
寫入字符流的操做類,經常使用的子類有
PrintWriter
,BufferedWriter
,OutputStreamWriter
(字節流和字符流之間的橋樑)
用於讀取字符流的抽象類,經常使用的子類有
BufferedReader
,InputStreamReader
其中最高效的輸入和輸出固然是字符流操做的
BufferedReader
和BufferedWriter
最便捷的,格式化最好的固然是
PrintStream
,PrintWriter
這兩個類都採用了格式化的輸入和輸出
輸出流中比較好用的是
PrintStream
,PrintWriter
輸出流最好用的固然是
BufferedWriter
和PrintWriter
的結合,例子以下;
File file=new File("/tmp"+File.separator+"test"+File.separator+"test.txt"); //用BufferedWriter實例化PrintWriter,顯著提升寫入的效率 PrintWriter printWriter=new PrintWriter(new BufferedWriter(new FileWriter(file))); String name="陳加兵"; int age=22; float grade=99.9f; printWriter.printf("姓名:%s,年齡:%s,grade:%s",name,age,grade); //格式化的寫入 printWriter.close();
本人以爲輸入流中
BufferedReader
功能已經很強大了