1. 程式人生 > >Java通過BufferedWriter追加內容到檔案末尾的幾種常用方法

Java通過BufferedWriter追加內容到檔案末尾的幾種常用方法

java程式碼

import java.io.BufferedWriter;                                                       
import java.io.FileOutputStream;                                                     
import java.io.FileWriter;                                                           
import java.io.IOException;                                                          
import java.io.OutputStreamWriter;                                                   
import java.io.RandomAccessFile;                                                     
                                                                                     
                                                                                     
public class WriteStreamAppend {                                                     
                                                                                     
    public static void method1(String file, String conent) {                         
        BufferedWriter out = null;                                                   
        try {                                                                        
             out = new BufferedWriter(new OutputStreamWriter(                        
                    new FileOutputStream(file, true)));                              
             out.write(conent);                                                      
         } catch (Exception e) {                                                     
             e.printStackTrace();                                                    
         } finally {                                                                 
            try {                                                                    
                 out.close();                                                        
             } catch (IOException e) {                                               
                 e.printStackTrace();                                                
             }                                                                       
         }                                                                           
     }                                                                               
                                                                                     
                                                                                     
    public static void method2(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 method3(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();                                                    
         }                                                                           
     }                                                                               
                                                                                     
    public static void main(String[] args) {                                         
         System.out.println("start");                                                
         method1("c:/test.txt", "追加到檔案的末尾");                                 
         System.out.println("end");                                                  
     }