1. 程式人生 > >java學習筆記(21)

java學習筆記(21)

2:資料操作流(操作基本型別資料的流)(理解)
(1)可以操作基本型別的資料
(2)流物件名稱
DataInputStream
DataOutputStream

3:記憶體操作流(理解)
(1)有些時候我們操作完畢後,未必需要產生一個檔案,就可以使用記憶體操作流。
(2)三種
A:ByteArrayInputStream,ByteArrayOutputStream
B:CharArrayReader,CharArrayWriter
C:StringReader,StringWriter

4:列印流(掌握)
(1)位元組列印流,字元列印流
(2)特點:
A:只操作目的地,不操作資料來源
B:可以操作任意型別的資料
C:如果啟用了自動重新整理,在呼叫println()方法的時候,能夠換行並重新整理
D:可以直接操作檔案
問題:哪些流可以直接操作檔案呢?
看API,如果其構造方法能夠同時接收File和String型別的引數,一般都是可以直接操作檔案的
(3)複製文字檔案
BufferedReader br = new BufferedReader(new FileReader(“a.txt”));
PrintWriter pw = new PrintWriter(new FileWriter(“b.txt”),true);

	String line = null;
	while((line=br.readLine())!=null) {
		pw.println(line);
	}
	
	pw.close();
	br.close();

5:標準輸入輸出流(理解)
(1)System類下面有這樣的兩個欄位
in 標準輸入流
out 標準輸出流
(2)三種鍵盤錄入方式
A:main方法的args接收引數
B:System.in通過BufferedReader進行包裝
BufferedReader br = new BufferedReader(new InputStreamReader(System.in

));
C:Scanner
Scanner sc = new Scanner(System.in);
(3)輸出語句的原理和如何使用字元流輸出資料
A:原理
System.out.println(“helloworld”);

PrintStream ps = System.out;
ps.println(“helloworld”);
B:把System.out用字元緩衝流包裝一下使用
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));

6:隨機訪問流(理解)
(1)可以按照檔案指標的位置寫資料和讀資料。
(2)案例:
A:寫資料
B:讀資料
C:獲取和改變檔案指標的位置

7:合併流(理解)
(1)把多個輸入流的資料寫到一個輸出流中。
(2)構造方法:
A:SequenceInputStream(InputStream s1, InputStream s2)
B:SequenceInputStream(Enumeration<? extends InputStream> e)

8:序列化流(理解)
(1)可以把物件寫入文字檔案或者在網路中傳輸
(2)如何實現序列化呢?
讓被序列化的物件所屬類實現序列化介面。
該介面是一個標記介面。沒有功能需要實現。
(3)注意問題:
把資料寫到檔案後,在去修改類會產生一個問題。
如何解決該問題呢?
在類檔案中,給出一個固定的序列化id值。
而且,這樣也可以解決黃色警告線問題

9:Properties(理解)
(1)是一個集合類,Hashtable的子類
(2)特有功能
A:public Object setProperty(String key,String value)
B:public String getProperty(String key)
C:public Set stringPropertyNames()
(3)和IO流結合的方法
把鍵值對形式的文字檔案內容載入到集合中
public void load(Reader reader)
public void load(InputStream inStream)

把集合中的資料儲存到文字檔案中 public void store(Writer writer,String comments)
public void store(OutputStream out,String comments)

10:NIO(瞭解)
(1)JDK4出現的NIO,對以前的IO操作進行了優化,提供了效率。但是大部分我們看到的還是以前的IO
(2)JDK7的NIO的使用
Path:路徑
Paths:通過靜態方法返回一個路徑
Files:提供了常見的功能
複製文字檔案
把集合中的資料寫到文字檔案