ホームページ  >  記事  >  Java  >  Javaで複数のファイルをマージする方法

Javaで複数のファイルをマージする方法

angryTom
angryTomオリジナル
2020-02-03 09:21:044124ブラウズ

実際のプロジェクトでは、より大きなファイルを処理する場合、ファイルは複数のサブファイルに分割されて処理され、最後にこれらのサブファイルがマージされることがよくあります。 Javaで複数のファイルをマージする方法を紹介します。

Javaで複数のファイルをマージする方法

Java でサブファイルをマージする最も簡単な方法は、読み取りと書き込みに BufferedStream を使用することです。

具体的な実装方法は以下のとおりで、コードが非常に詳しく書かれているので参考・検討してください。

1. まず、mergeFiles メソッドを作成し、文字列配列と文字列パラメータを受け取り、ファイル結合関数

public static boolean mergeFiles(String[] fpaths, String resultPath) {
    if (fpaths == null || fpaths.length < 1 || TextUtils.isEmpty(resultPath)) {
        return false;
    }
    if (fpaths.length == 1) {
        return new File(fpaths[0]).renameTo(new File(resultPath));
    }

    File[] files = new File[fpaths.length];
    for (int i = 0; i < fpaths.length; i ++) {
        files[i] = new File(fpaths[i]);
        if (TextUtils.isEmpty(fpaths[i]) || !files[i].exists() || !files[i].isFile()) {
            return false;
        }
    }

    File resultFile = new File(resultPath);

    try {
        int bufSize = 1024;
        BufferedOutputStream outputStream = new BufferedOutputStream(new FileOutputStream(resultFile));
        byte[] buffer = new byte[bufSize];

        for (int i = 0; i < fpaths.length; i ++) {
            BufferedInputStream inputStream = new BufferedInputStream(new FileInputStream(files[i]));
            int readcount;
            while ((readcount = inputStream.read(buffer)) > 0) {
                outputStream.write(buffer, 0, readcount);
            }
            inputStream.close();
        }
        outputStream.close();
    } catch (FileNotFoundException e) {
        e.printStackTrace();
        return false;
    } catch (IOException e) {
        e.printStackTrace();
        return false;
    }

    for (int i = 0; i < fpaths.length; i ++) {
        files[i].delete();
    }

    return true;
}

2 を完了します。 main関数内でmergeFilesメソッドを呼び出し、複数のファイルのアドレス配列を渡し、出力ファイルのアドレスを渡します。

public static void main(String[] args) {
          mergeFiles(new String[]{"D:/in_1.txt", "D:/in_2.txt", "D:/in_3.txt"}, "D:/output.txt");
}

(関連ビデオ チュートリアルの共有: Java ビデオ チュートリアル)

以上がJavaで複数のファイルをマージする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。