S
Sasku
Gast
Gute Morgen Community,
als erstes tut mir leid, dass ich so einen ungenauen namen für dieses Thema gefunden habe .. fällt aber nichts ein, wie man es sonst nennen könnte^^
So jetzt zum Problem, ich möchte ein kleines Backup Programm schreiben .. ich möchte / muss mehrere Dateien backupen .. so jetzt habe ich ein Array mit den Pfaden der Dateien und möchte es komplett an die Methode übergeben die das Zippen ( also das backup ausführen ) übernimmt .. Problem .. ich kann es nicht als String Array übergeben sondern muss es als File übergeben .. jetzt weiß ich nicht wie ich es übergeben soll ...
hier mal mein Code:
Die Dateien ( besser gesagt die Pfade ) bekomme ich aus einer Liste ^^
Also kann ich da jetzt das String Array "dateiInText[]" übergeben so dass es Strings bleiben?
mfg
als erstes tut mir leid, dass ich so einen ungenauen namen für dieses Thema gefunden habe .. fällt aber nichts ein, wie man es sonst nennen könnte^^
So jetzt zum Problem, ich möchte ein kleines Backup Programm schreiben .. ich möchte / muss mehrere Dateien backupen .. so jetzt habe ich ein Array mit den Pfaden der Dateien und möchte es komplett an die Methode übergeben die das Zippen ( also das backup ausführen ) übernimmt .. Problem .. ich kann es nicht als String Array übergeben sondern muss es als File übergeben .. jetzt weiß ich nicht wie ich es übergeben soll ...
hier mal mein Code:
Code:
private String s;
private String[] dateiInText;
private String dateiInhalt = "";
SimpleDateFormat time = new SimpleDateFormat("MM.dd.yyyy"); // Zeit wird für Zip formatiert
Date currDate = new java.sql.Timestamp(Calendar.getInstance().getTime().getTime()); // aktuelles Datum wird genommen
@Override
public void actionPerformed(ActionEvent arg0) { // Action Performed für den Speicherbutton
dateiInText = new String[oFlaeche.model.getSize()]; // String Array "dateiInText" wird auf die Länge der Liste gesetzt
for ( int i = 0; i<oFlaeche.model.getSize(); i++) { // For-Schleife ist für das zuweisen der Links in das String Array verantwortlich
dateiInText[i] = (String) oFlaeche.model.getElementAt(i);
s = (String) oFlaeche.model.getElementAt(i);
System.out.println(i);
System.out.println(dateiInText[i]);
}
speicherort_t = oFlaeche.speicherPfad_t.getText(); // schreibt den Pfad der im Textfeld steht in speicherort_t
zipFile(new File(dateiInText[0]), speicherort_t+"\\"+time.format(currDate)+".zip"); // ruft die Methode "zipFile" auf und setzt den Namen des ZipFiles
}
public static void zipFile(File inputFile, String zipFilePath) { // Methode zum zippen der Dateien
try {
FileOutputStream fileOutputStream = new FileOutputStream(zipFilePath); // setzt den Pfad für das Zip-File
ZipOutputStream zipOutputStream = new ZipOutputStream(fileOutputStream);
ZipEntry zipEntry = new ZipEntry(inputFile.getName());
zipOutputStream.putNextEntry(zipEntry);
FileInputStream fileInputStream = new FileInputStream(inputFile);
byte[] buf = new byte[1024];
int bytesRead;
while ((bytesRead = fileInputStream.read(buf)) > 0 ) {
zipOutputStream.write(buf, 0, bytesRead);
}
zipOutputStream.closeEntry();
zipOutputStream.close();
fileOutputStream.close();
// System.out.println("Regular file: " + inputFile.getCanonicalPath()+ " is zipped to archive: "+zipFilePath);
} catch (IOException e) {
e.printStackTrace();
}
Die Dateien ( besser gesagt die Pfade ) bekomme ich aus einer Liste ^^
Also kann ich da jetzt das String Array "dateiInText[]" übergeben so dass es Strings bleiben?
mfg