Datei einlesen/auslesen

Status
Nicht offen für weitere Antworten.

MQue

Top Contributor
Hi,

ich möchte eine Datei (xml) einlesen und in einen anderen Pfad wieder schreiben, also quasi eine Datei von einem Pfad in einen anderen Pfad kopieren,
Wie kann ich das am Besten machen, gibts da vielleicht eine möglichkeit, dass ganz einfach zu realisieren?
 
Code:
public static File copyFile(File file, File dir) throws IOException {
		File destFile = new File(dir, file.getName());
		// 4K Blöcke
		byte[] b = new byte[4096];
		FileInputStream fis = null;
		FileOutputStream fos = null;
		try {
			fis = new FileInputStream(file);
			fos = new FileOutputStream(destFile);
			int l = -1;
			while ((l = fis.read(b)) != -1) {
				fos.write(b, 0, l);
			}

		} finally {
			if (fis != null)
				fis.close();
			if (fos != null) {
				fos.flush();
				fos.close();
			}
		}
		return destFile;
	}

Das ist die alte Methode, mit FileChannel würds auch gehen.
 
Oder einfach: http://commons.apache.org/io/api-release/org/apache/commons/io/FileUtils.html#copyFile(java.io.File,%20java.io.File,%20boolean)
 
maki hat gesagt.:
Oder einfach: http://commons.apache.org/io/api-release/org/apache/commons/io/FileUtils.html#copyFile(java.io.File,%20java.io.File,%20boolean)

Wieso um Gottes Willen gleich wieder ein zusätzliches Archiv verwenden? :?:

Es ist nur ein einfaches Kopieren einer Datei.

Code:
try {
    // Filechannels holen
    FileChannel fcSource = new FileInputStream(new File("FileURL_Quelle")).getChannel();
    FileChannel fcTarget = new FileOutputStream(new File("FileURL_Ziel")).getChannel();
    // kopieren
    fcSource.transferTo(0, fcSource.size(), fcTarget);
    // Fertig
} catch (IOException ioe) {
    debug("Fehler beim Kopieren der Dateien.");
    debug(ioe);
    throw ioe;
}
 
Wieso um Gottes Willen gleich wieder ein zusätzliches Archiv verwenden? icon_question.gif
Es mag dir ja nicht bewusst sein, aber in jedem größeren Projekt hat man die meisten commons jars schon dabei 😉

Dann müsste die frage lauten: Wieso um Gottes willen etwas neu schreiben das man schon hat?

Selbst wenn nicht, ist die Fraghe zu stellen: Wieso um Gottes willen das Rad neu erfinden, selbst wenn es nur 10 Zeilen sind?

Die Antwort auf die letzte Frage ist geschmackssache, ich bevorzuge immer fertige, etablierte und gewartete "Archive".
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben