<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                ### 簡單的說明 一般小的字符(char)文件的讀取和寫入數據,我們使用FileReader和FileWriter類就可以實現了,但是對于大的字符(char)文件的讀取和寫入數據,性能就會有很大的問題,我們一般選擇BufferedReader和BufferedWriter來處理,也就是說BufferedReader和BufferedWriter主要的目的是提高字符(char)文件的內容讀取和寫入的性能。 ### BufferedReader和BufferedWriter ### BufferedReader類 構造方法: BufferedReader(Reader in) 創建一個有8192的字符(char)的緩存區 BufferedReader(Reader in, int size) 創建一個有size大小字符(char)的緩存區 關鍵方法: read() read(char[] buffer, int offset, int length) readLine()——讀取一行數據 常用使用方式: ~~~ BufferedReader buf = new BufferedReader(new FileReader("file.java")); ~~~ ### BufferedWriter類 構造方法: BufferedWriter(Writer out) 創建一個有8192的字符(char)的緩存區 BufferedWriter(Writer out, int size) 創建一個有size大小字符(char)的緩存區 關鍵方法: write(int oneChar) write(String str, int offset, int count) write(char[] buffer, int offset, int count) newLine()——插入新的一行 flush() 主要是用來把緩存區的數據刷新到文件中去 常用使用方式: ~~~ BufferedWriter buf = new BufferedWriter(new FileWriter("file.java")); ~~~ ### 一個測試的Demo 定義三個方法: (1)testBufferedWrite方法—測試BufferedWriter BufferedWriter的使用方法: ~~~ //1.創建一個輸入字符文件 //2.定義一個FileWriter //3.定義一個BufferedWriter //4.寫的操作 //5.關閉對應的流 ~~~ (2)testBufferedReader方法—-向文件讀內容 BufferedReader的使用方法: ~~~ //1.創建一個File文件 //2.定義一個FileReader //3.定義一個BufferedReader //4.執行讀的操作 讀的操作有二種方式,一各是按char來讀,一種是按行來說。 一般來說按行來讀是更簡單,更有效的。 //5.關閉對應的流,可以只關閉最外面的流 ~~~ (3)CopyFile方法—-復制字符文件 ~~~ //1.定義輸入和輸出的文件 //2.分別定義FileReader,FileWriter //3.分別定義BufferedReader,BufferedWriter //4.實現復制功能 //5.關閉對應 的流,可以只關閉最外面的緩存流就可以 ~~~ ~~~ import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; public class BufferedReaderBufferedWrite { //復制字符文件 public static void CopyFile(String src,String des){ //3.分別定義BufferedReader,BufferedWriter BufferedReader br = null; BufferedWriter bw = null; try { //1.定義二個文件 File fsrc = new File(src); File fdes = new File(des); //2.分別定義FileReader,FileWriter FileReader fr = new FileReader(fsrc); FileWriter fw = new FileWriter(fdes); br = new BufferedReader(fr); bw = new BufferedWriter(fw); //4.復制操作 char[] c = new char[2]; int len; while((len = br.read(c)) != -1){ bw.write(c, 0, len); bw.flush(); } } catch (FileNotFoundException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); }finally{ //5.關閉對應 的流,可以只關閉最外面的緩存流就可以 if(bw != null){ try { bw.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } if(br != null){ try { br.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } //測試BufferedReader public static void testBufferedReader(){ //3.定義一個BufferedReader BufferedReader bf = null; try { //1.定義一個文件 File f1= new File("testBufferedWrite.txt"); //2.定義一個FileReader FileReader fr = new FileReader(f1); bf = new BufferedReader(fr); //4.執行讀的操作 //方式一 // char[] c = new char[2]; // int len; // while((len = bf.read(c)) != -1){ // System.out.print(c); // } //方式二 String str; while((str = bf.readLine()) != null){ System.out.print(str); System.out.println(); } } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ //5.關閉對應的流,可以只關閉最外面的流 if(bf != null){ try { bf.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } //測試BufferedWriter public static void testBufferedWrite(){ //3.定義一個BufferedWriter BufferedWriter bw = null; try { //1.定義一個文件 File f1 = new File("testBufferedWrite.txt"); //2.定義一個FileWriter FileWriter fw = new FileWriter(f1); bw = new BufferedWriter(fw); //4.寫的操作 String str = "測試BufferedWriter"; bw.write(str); bw.newLine(); bw.write(str); bw.flush(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ //5.關閉對應的流 if(bw != null){ try { bw.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } } ~~~ 調用: ~~~ //BufferedWriter使用樣例 BufferedReaderBufferedWrite.testBufferedWrite(); //測試BufferedReader BufferedReaderBufferedWrite.testBufferedReader(); //復制字符文件 BufferedReaderBufferedWrite.CopyFile("testBufferedWrite.txt", "testBufferedWrite_copy.txt"); ~~~ 參考資料: 1.BufferedWriterapi文檔 android_sdk_docs_offline/reference/java/io/BufferedWriter.html 2.BufferedReader文檔 android_sdk_docs_offline/reference/java/io/BufferedReader.html 3.BufferedOutputStream與BufferedReader視頻 [http://edu.csdn.net/course/detail/805/10967?auto_start=1](http://edu.csdn.net/course/detail/805/10967?auto_start=1)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看