Hallo,
ich versuche, ods-Dateien zu kopieren und unter eineam andern Namen zu speichern.
Dazu habe ich einfach mal den Kopiercode verwendet.
Es funktioniert eigentlich alles, nur wenn ich die neu erstelle Datei öffnen will, kommt, dass OO die Datei reparieren muss, um sie öffnen zu können. Wenn ich sie reparieren lasse, dann kann ich sie auch öffen. Aber das kann doch nicht die "optimale" Lösung sein.
ich versuche, ods-Dateien zu kopieren und unter eineam andern Namen zu speichern.
Dazu habe ich einfach mal den Kopiercode verwendet.
Es funktioniert eigentlich alles, nur wenn ich die neu erstelle Datei öffnen will, kommt, dass OO die Datei reparieren muss, um sie öffnen zu können. Wenn ich sie reparieren lasse, dann kann ich sie auch öffen. Aber das kann doch nicht die "optimale" Lösung sein.
Java:
public class CreateODS {
private Notentabelle notentabelle1;
private String pfad;
private File klassenliste;
public CreateODS(Notentabelle notentabelle, String tabellenname, String pfad) {
this.notentabelle1 = notentabelle;
this.pfad = pfad;
try{
// Save the data to an ODS file and open it.
this.klassenliste = new File(pfad);
//Backup anlegen
backup();
} catch (IOException e) {
e.printStackTrace();
}
public void backup() throws IOException{
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("HH.MM.ss ' am ' dd.MM.yyyy");
String datum = simpleDateFormat.format(new Date());
File fSrc = new File(klassenliste.getName()); // Quelldatei
File fDes = new File(klassenliste.getParent() + "/" + "Backup" + "/" +datum+"backup.ods"); // Zieldatei
FileInputStream fis = new FileInputStream(fSrc); //Stream fuer Quelldatei
FileOutputStream fos = new FileOutputStream(fDes); //Stream fuer Zieldatei
byte buf[] = new byte[2024]; // Buffer für gelesene Daten
while ( fis.read(buf) != -1 ) { // solange lesen, bis EOF
fos.write(buf); // Inhalt schreiben
}
fis.close();
fos.flush();
fos.close();
}
}