今天復習了一下BufferedWriter知識點,順便研究了一下怎麽樣寫一個規範的API文檔。代碼如下:
1 package com.paul; 2 3 import java.io.BufferedReader; 4 import java.io.BufferedWriter; 5 import java.io.FileReader; 6 import java.io.FileWriter; 7 import java.io.IOException; 8 9 /** 10 * <p>知識點:BufferedWriter:<br> 11 * 將文本寫入字符輸出流,緩衝各個字符,從而提供單個字符、數組和字符串的高效寫入. <br> 12 * BufferedReader:從字符輸入流中讀取文本,換從各個字符,從而實現字符,數組和行的高效讀取. 13 * <pre>需求分析:用高效流完成文件的複製. 14 * 步驟:<br> 15 * 1.1,創建輸入緩衝流對象.要複製哪個文件. 16 * 1.2,創建輸出緩衝流對象.文件複製到哪裏,叫什麽名字,是否可以追加寫入. 17 * 1.3,創建數組對象chs,和數組長度變量len 18 * 1.4,用while循環執行寫入數據的操作,循環條件是當br對象讀取到數組中,數組中存在數據(數組長度不=-1)時. 19 * 1.5,釋放資源 20 * </pre> 21 * <p>參考BufferWriter(Reader)主題,詳見文檔JDK API 1.6.0 BuffereWriter(Reader) 22 * 方法返回值 void 沒有返回值 23 * 異常 IOException 24 * @param Write(),int size 有兩個參數,Write()方法的對象,即字符輸出流,給定大小的字符輸出流 25 * @see java.io.BufferedWriter 26 * @author 唐保羅 27 * @version 1.0 28 */ 29 public class IODemo5 { 30 public static void main(String[] args) throws IOException{ 31 //1.1 32 BufferedReader br = new BufferedReader(new FileReader("E:/class.Java/workspace/IODemo/src/com/paul/IODemo4.java")); 33 //1.2 34 BufferedWriter bw = new BufferedWriter(new FileWriter("IODemo7.txt")); 35 //1.3 36 char[] chs = new char[1024]; 37 int len; 38 //1.4 39 while((len=br.read(chs))!=-1){ 40 bw.write(chs,0,len); 41 } 42 //1.5 43 bw.close(); 44 br.close(); 45 } 46 }
這裏說一下做API文檔遇到的問題,之前寫的API導出的時候一共報了4処錯誤,@return,@IOException,@see*2,又回去看了半天原碼,也算是基本搞明白了。原來應該是這樣的,@param,@return,@IOException,這三個説明應該加在方法中需要説明的地方,而不是放在最開頭,@see 後面接的内容一定要能識別,或者有完整的路徑,就比如説上面代碼裏的java.io.BufferedWriter。
代碼裏沒在最頂端聲明版權,如果要聲明版權,可以參考原碼寫:* Copyright (c) 1996, 2001, Oracle and/or its affiliates. All rights reserved.代碼裏標記的從哪個版本開始生效@since JDK1.1 可以不寫,@see,可寫n個,n>=0,@author,作者一般都只寫一個。@version,版本號可以寫多個,但是查了一下,有大佬解釋說可以寫多個,但是只有第一個有效。我沒試。用eclipse導出的API文檔符合HTML的編碼規範,所以在前面可以用p標簽和pre標簽,p標簽可以不寫結束標簽,但是pre標簽要寫結束標簽。至於更多的HTML5,CSS代碼,就算可以編譯通過,也不應該把這些丟到Java代碼裏。畢竟,保持一個良好的編碼習慣是一個碼農最基本的素質。