溫馨提示×

java怎么批量修改文件內容

小億
175
2023-12-05 10:25:17
欄目: 編程語言

在Java中,可以使用以下幾種方式來批量修改文件的內容:

  1. 使用文件流(FileInputStream和FileOutputStream):首先,使用FileInputStream讀取原始文件的內容,然后使用FileOutputStream將修改后的內容寫入到新的文件中??梢允褂醚h遍歷多個文件,對每個文件進行修改。
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class FileContentModifier {

    public static void modifyFileContent(String filePath) throws IOException {
        // 讀取原始文件內容
        FileInputStream fis = new FileInputStream(filePath);
        byte[] content = new byte[fis.available()];
        fis.read(content);
        fis.close();

        // 修改文件內容
        String modifiedContent = new String(content);
        modifiedContent = modifiedContent.replaceAll("oldText", "newText");

        // 將修改后的內容寫入新文件
        FileOutputStream fos = new FileOutputStream("newFile.txt");
        fos.write(modifiedContent.getBytes());
        fos.close();
    }

    public static void main(String[] args) {
        String[] fileNames = {"file1.txt", "file2.txt", "file3.txt"};

        try {
            for (String fileName : fileNames) {
                modifyFileContent(fileName);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
  1. 使用RandomAccessFile類:RandomAccessFile類可以同時讀取和寫入文件的內容,可以使用seek()方法定位到需要修改的位置,然后使用write()方法寫入新的內容。
import java.io.IOException;
import java.io.RandomAccessFile;

public class FileContentModifier {

    public static void modifyFileContent(String filePath) throws IOException {
        // 以讀寫方式打開文件
        RandomAccessFile raf = new RandomAccessFile(filePath, "rw");

        // 定位到需要修改的位置
        raf.seek(10);

        // 寫入新的內容
        raf.writeBytes("newText");

        // 關閉文件
        raf.close();
    }

    public static void main(String[] args) {
        String[] fileNames = {"file1.txt", "file2.txt", "file3.txt"};

        try {
            for (String fileName : fileNames) {
                modifyFileContent(fileName);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

以上兩種方式都可以批量修改多個文件的內容。根據實際需求選擇合適的方式來修改文件內容。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女