Heim  >  Artikel  >  Java  >  So führen Sie mehrere Dateien in Java zusammen

So führen Sie mehrere Dateien in Java zusammen

angryTom
angryTomOriginal
2020-02-03 09:21:044077Durchsuche

In tatsächlichen Projekten werden bei der Verarbeitung größerer Dateien die Dateien häufig zur Verarbeitung in mehrere Unterdateien aufgeteilt und diese Unterdateien schließlich zusammengeführt. Im Folgenden werde ich Ihnen vorstellen, wie Sie mehrere Dateien in Java zusammenführen.

So führen Sie mehrere Dateien in Java zusammen

Der einfachste Weg, Unterdateien in Java zusammenzuführen, ist die Verwendung von BufferedStream zum Lesen und Schreiben.

Die spezifische Implementierungsmethode ist wie folgt. Der Code ist für Ihre Referenz und Ihr Studium sehr detailliert.

1. Erstellen Sie zuerst die Methode mergeFiles, empfangen Sie das String-Array und die String-Parameter und schließen Sie die Dateizusammenführungsfunktion ab

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 Die Methode mergeFiles wird in der Hauptfunktion aufgerufen. Bei Verwendung wird das Adressarray mehrerer Dateien und die Adresse der Ausgabedatei übergeben.

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

(Weitergabe verwandter Video-Tutorials: Java-Video-Tutorial)

Das obige ist der detaillierte Inhalt vonSo führen Sie mehrere Dateien in Java zusammen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn