1. 程式人生 > >java如何追加寫入txt檔案

java如何追加寫入txt檔案

java中,對檔案進行追加內容操作的三種方法

import java.io.BufferedWriter;
import java.io.FileOutputStream;
import java.io.FileWriter;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.RandomAccessFile;
//如果檔案存在,則追加內容;如果檔案不存在,則建立檔案,追加內容的三種方法
public class AppendContentToFile {
@SuppressWarnings("static-access")
public static void main(String[] args) {
    AppendContentToFile a = new AppendContentToFile();
    a.method1();
    a.method2("E:\\dd.txt", "222222222222222");
    a.method3("E:\\dd.txt", "33333333333");
}

方法1:

public void method1() {
    FileWriter fw = null;
    try {
        //如果檔案存在,則追加內容;如果檔案不存在,則建立檔案
        File f=new File("E:\\dd.txt");
        fw = new FileWriter(f, true);
    } catch (IOException e) {
        e.printStackTrace();
    }
    PrintWriter pw = new PrintWriter(fw);
    pw.println("追加內容");
    pw.flush();
    try {
        fw.flush();
        pw.close();
        fw.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

方法2:

public static void method2(String file, String conent) {
    BufferedWriter out = null;
    try {
        out = new BufferedWriter(new OutputStreamWriter(
        new FileOutputStream(file, true)));
        out.write(conent+"\r\n");
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        try {
            out.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

方法3:

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+"\r\n");
        randomFile.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}