| | |
| | | import java.util.zip.ZipOutputStream; |
| | | |
| | | /** |
| | | * Eine Klasse mit Methoden zum Packen von Dateien # |
| | | * Packen von Dateien |
| | | * |
| | | * @author Ulrich Hilger, 15. Januar 2024 |
| | | */ |
| | | public class Deflator { |
| | | |
| | | /* --------------- Ordner packen ----------------- */ |
| | | |
| | | /** |
| | | * Einen Ordner packen. |
| | | * |
| | | * Als Ziel wird eine neue Datei mit Dateiendung '.zip' erzeugt, die so heisst wie der Ordner, der |
| | | * gapckt werden soll. Die Datei mit dem gepackten Ordnerinhalt wird in dem Ordner angelegt, der |
| | | * gepackt werden soll. Die Datei mit dem gepackten Ordnerinhalt wird in dem Ordner angelegt, der |
| | | * den zu packenden Ordner enthaelt. |
| | | * |
| | | * @param fName Name des zu packenden Ordners |
| | | * @param relPath relativer Pfad zum Ordner, der gepackt werden soll |
| | | * @param fName Name und Pfad relativ zu base des zu packenden Ordners /home/neu-2024-11-08-1722/ |
| | | * @param relPath relativer Pfad zum Ordner, der gepackt werden soll /h2/cms/home/neu-2024-11-08-1722/?zip |
| | | * @param base /Users/ulli/data/helix-data |
| | | * @return die Meldung mit dem Ergebnis. Wenn die Meldung nicht "ok" lautet wurde die ZIP-Datei |
| | | * nicht erzeugt und die Meldung nennt den Grund. |
| | | */ |
| | | public String packFolder(String fName, String relPath, String base/*, HttpExchange e*/) { |
| | | if (!relPath.startsWith(".")) { |
| | | public String packFolder(String fName, /*String relPath, */String base) { |
| | | // if (!relPath.startsWith(".")) { |
| | | try { |
| | | //String fName = getFileName(e); |
| | | //logger.fine("fName: " + fName); |
| | | if (fName.endsWith(Const.STR_SLASH)) { |
| | | if (fName.endsWith("/")) { |
| | | File dir = new File(base, fName); |
| | | if (dir.isDirectory()) { |
| | | //logger.fine("absPath: " + dir.getAbsolutePath()); |
| | |
| | | //logger.log(Level.SEVERE, result, ex); |
| | | return result; |
| | | } |
| | | } else { |
| | | return "Falsche relative Pfadangabe"; |
| | | } |
| | | // } else { |
| | | // return "Falsche relative Pfadangabe"; |
| | | // } |
| | | } |
| | | |
| | | /** |