Cyh的博客

          Email:kissyan4916@163.com
          posts - 26, comments - 19, trackbacks - 0, articles - 220

          添加內容到文件尾

          Posted on 2009-05-24 21:26 啥都寫點 閱讀(567) 評論(0)  編輯  收藏 所屬分類: J2SE
          關鍵技術:
          • 通過RandomAccessFile以讀寫的方式打開文件輸出流,使用它的seek方法可以將讀寫指針移到文件尾,再使用它的write方法將數據寫到讀寫指針后面,完成文件的追加
          • 通過FileWriter打開文件輸出流,構造FileWriter時指定寫入模式,是一個布爾值,為true時表示寫入的內容添加到已有文件內容的后面,為false時重新寫文件,以前的數據被清空,默認為fasle。

          package book.io;

          import java.io.FileWriter;
          import java.io.IOException;
          import java.io.RandomAccessFile;

          /**
           * 將內容追加到文件尾部
           
          */
          public class AppendToFile {

              
          /**
               * A方法追加文件:使用RandomAccessFile
               * 
          @param fileName    文件名
               * 
          @param content    追加的內容
               
          */
              
          public static void appendMethodA(String fileName, String content){
                  
          try {
                      
          //    打開一個隨機訪問文件流,按讀寫方式
                      RandomAccessFile randomFile = new RandomAccessFile(fileName, "rw");
                      
          //    文件長度,字節數
                      long fileLength = randomFile.length();
                      
          //將寫文件指針移到文件尾。
                      randomFile.seek(fileLength);
                      randomFile.writeBytes(content);
                      randomFile.close();
                  } 
          catch (IOException e){
                      e.printStackTrace();
                  }
              }
              
          /**
               * B方法追加文件:使用FileWriter
               * 
          @param fileName
               * 
          @param content
               
          */
              
          public static void appendMethodB(String fileName, String content){
                  
          try {
                      
          //打開一個寫文件器,構造函數中的第二個參數true表示以追加形式寫文件
                      FileWriter writer = new FileWriter(fileName, true);
                      writer.write(content);
                      writer.close();
                  } 
          catch (IOException e) {
                      e.printStackTrace();
                  }
              }

              
          public static void main(String[] args) {
                  String fileName 
          = "C:/temp/newTemp.txt";
                  String content 
          = "new append!";
                  
          //按方法A追加文件
                  AppendToFile.appendMethodA(fileName, content);
                  AppendToFile.appendMethodA(fileName, 
          "append end. \n");
                  
          //顯示文件內容
                  ReadFromFile.readFileByLines(fileName);
                  
          //按方法B追加文件
                  AppendToFile.appendMethodB(fileName, content);
                  AppendToFile.appendMethodB(fileName, 
          "append end. \n");
                  
          //顯示文件內容
                  ReadFromFile.readFileByLines(fileName);
              }
          }



                                                                                                                 --    學海無涯
                  

          主站蜘蛛池模板: 上杭县| 安多县| 广安市| 神池县| 平谷区| 连南| 临高县| 龙山县| 临夏市| 崇明县| 科尔| 绥滨县| 大英县| 夏河县| 手游| 泊头市| 永定县| 宝丰县| 万载县| 岱山县| 栖霞市| 四会市| 安阳市| 建瓯市| 陕西省| 安义县| 金华市| 崇明县| 乌拉特后旗| 双鸭山市| 泽库县| 鹤峰县| 北安市| 盖州市| 长阳| 静海县| 上蔡县| 长治县| 峨眉山市| 广宁县| 岢岚县|