Class ELOAsFileUtils


  • public class ELOAsFileUtils
    extends java.lang.Object

    Überschrift: ELOAsFileUtils.

    Beschreibung: Hilfsmethoden für Dateioperationen.

    Copyright: Copyright (c) ELO Digital Office GmbH 2018

    • Constructor Summary

      Constructors 
      Constructor Description
      ELOAsFileUtils()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void addIllegalChar​(char c)
      Fügt das angegebene ungültige Zeichen in der internen Liste mit den ungültigen Zeichen ein.
      static java.io.File changeExt​(java.io.File file, java.lang.String newExt)
      Ändert die Extension einer Datei auf eine neue Extension um.
      static java.lang.String changeExt​(java.lang.String fileName, java.lang.String newExt)
      Ändert die Extension einer Datei auf eine neue Extension um.
      static java.io.File createEcdFile​(IXconnect ixConnect, int objId, java.io.File targetDir)
      Erzeugt eine ECD-Datei für die angegebene Objekt-ID im angegebenen Zielverzeichnis.
      static java.io.File createEcdFile​(java.lang.String archiveName, de.elo.ix.client.Sord sord)
      Erzeugt eine ECD-Datei für den angegebenen Archiveintrag.
      static java.io.File createEcdFile​(java.lang.String archiveName, de.elo.ix.client.Sord sord, java.io.File targetDir)
      Erzeugt eine ECD-Datei für den angegebenen Archiveintrag im angegebenen Verzeichnis.
      static boolean deleteDirectoryFiles​(java.io.File directory)
      Löscht die vorhandenen Elemente im angegebenen Verzeichnis und meldet zurück, ob alle Elemente gelöscht wurden.
      static void deleteFiles​(java.util.List<java.io.File> files)
      Löscht die angegebenen Dateien.
      static java.lang.String deleteIllegalChars​(java.lang.String input)
      Löscht Zeichen, die nicht in einem Dateinamen vorhanden sein dürfen.
      static boolean deleteTempFileAndFolder​(java.io.File tempFile)
      Löscht die angegebene temporäre Datei mit dem übergeordneten Ordner.
      static java.io.File getEswFile​(java.io.File file)
      Liefert die es8-Datei für die angegebene Datei zurück.
      static java.io.File getEtfFile​(java.io.File file)
      Liefert die ETF-Datei zu der angegebenen Datei zurück.
      static java.io.File getEwfFile​(java.io.File file)
      Liefert die ewf-Datei zur angegebenen Datei zurück.
      static java.lang.String getExt​(java.io.File file)
      Gibt die Extension eines Dateinamens ohne führenden Punkt zurück.
      static java.lang.String getExt​(java.lang.String fileName)
      Gibt die Extension eines Dateinamens ohne führenden Punkt zurück.
      static java.util.HashMap<java.lang.String,​java.lang.String> getFileContentMap​(java.io.File file)
      Liefert eine HashMap mit dem Dateiinhalt zurück.
      static java.util.ArrayList<java.lang.String> getFileLines​(java.io.File file)
      Liefert eine Liste mit den Zeilen der angegebenen Datei zurück.
      static java.io.File getIndexFile​(java.io.File file)
      Liefert die Index-Datei für die angegebene Datei zurück.
      static java.lang.String getLegalArchiveElementName​(IXconnect ixConnect, java.lang.String archElemName)
      Liefert eine gültige Bezeichnung für den angegebenen Archiveintrag zurück.
      static java.lang.String getLegalAttachmentFileName​(IXconnect ixConnect, java.lang.String attachFileName)
      Liefert eine falls notwendig abgekürzte Dateibezeichnung zurück.
      static java.lang.String getLegalFileName​(IXconnect ixConnect, java.lang.String fileName)
      Liefert einen gültigen Dateinamen aus dem übergebenen Dateinamen zurück.
      static java.io.File getLockFile​(java.io.File file)
      Liefert die lock-Datei zur angegebenen Datei zurück.
      static java.lang.String getNameWithoutExtension​(java.lang.String filePath)
      Liefert zu einem kompletten Dateipfad wie "D:\Beispiele\Test.txt" den Dateinamen ohne Dateiendung, im Beispiel also "Test".
      static java.io.File getParentFolderByName​(java.io.File file, java.lang.String parentName)
      Liefert den übergeordneten Ordner mit dem angegebenen Namen zurück.
      static java.lang.String getPath​(java.lang.String fileName)
      Gibt den Pfadanteil eines kompletten Dateinamens zurück.
      static java.lang.String getReadableFilesize​(java.io.File file)
      Liefert die Dateigröße als einen gut für Menschen lesbaren String zurück.
      static java.util.ArrayList<java.io.File> getRootFiles()
      Liefert eine Liste mit den Hauptverzeichnissen auf dem System zurück.
      static java.io.File getTempDir()
      Liefert das temporäre Java Verzeichnis zurück.
      static java.io.File getUniqueFile​(java.io.File dir, java.lang.String nameWithExt)
      Sucht im Zielverzeichnis nach einem unbenutzten Dateinamen nach einer Namensvorgabe.
      static java.lang.String getValue​(java.io.File iniFile, java.lang.String key)
      Liefert den Wert des angegebenen Schlüssels zurück.
      static boolean hasExtension​(java.io.File file, java.lang.String fileExtension)
      True, falls die angegebene Datei die angegebene Dateiendung besitzt.
      static boolean hasFullAccess​(java.io.File file)
      Meldet zurück, ob auf die angegebene Datei normal zugegriffen werden kann.
      static java.lang.String replaceIllegalChars​(java.lang.String input, char replaceChar)
      Ersetzt die Zeichen, die nicht in einem Dateinamen vorhanden sein dürfen, durch das angegebene Zeichen.
      static java.lang.String stripPath​(java.lang.String fileName)
      Gibt den Dateinamen ohne den Pfad zurück.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • ELOAsFileUtils

        public ELOAsFileUtils()
    • Method Detail

      • getUniqueFile

        public static java.io.File getUniqueFile​(java.io.File dir,
                                                 java.lang.String nameWithExt)
                                          throws java.lang.Exception
        Sucht im Zielverzeichnis nach einem unbenutzten Dateinamen nach einer Namensvorgabe. Falls die Namensvorgabe noch nicht vorhanden ist, wird sie direkt verwendet. Wenn sie vorhanden ist, dann wird sie um einen Zähler ergänzt. Nicht erlaubte Zeichen im Namen werden durch einen Unterstrich ersetzt.
        Parameters:
        dir - Verzeichnis in dem die Datei erstellt werden soll
        nameWithExt - Name der Datei ohne den Dateipfad
        Returns:
        eindeutige Datei
        Throws:
        java.lang.Exception
      • replaceIllegalChars

        public static java.lang.String replaceIllegalChars​(java.lang.String input,
                                                           char replaceChar)
                                                    throws java.lang.Exception
        Ersetzt die Zeichen, die nicht in einem Dateinamen vorhanden sein dürfen, durch das angegebene Zeichen. Bei der Angabe von '0' wird der Unterstrich als Ersatzzeichen verwendet.
        Parameters:
        input - Ursprüngliche Zeichenkette
        replaceChar - Zeichen, durch das die ungültigen Zeichen ersetzt werden
        Returns:
        bereinigte Zeichenkette
        Throws:
        java.lang.Exception
      • deleteIllegalChars

        public static java.lang.String deleteIllegalChars​(java.lang.String input)
                                                   throws java.lang.Exception
        Löscht Zeichen, die nicht in einem Dateinamen vorhanden sein dürfen.
        Parameters:
        input - Ursprüngliche Zeichenkette
        Returns:
        bereinigte Zeichenkette
        Throws:
        java.lang.Exception
      • stripPath

        public static java.lang.String stripPath​(java.lang.String fileName)
                                          throws java.lang.Exception
        Gibt den Dateinamen ohne den Pfad zurück. Wenn kein Pfad-Separator vorhanden ist, dann wird der ganze Ausdruck als Dateiname angesehen (und nicht als Pfad ohne Dateiname).
        Parameters:
        fileName - Kompletter Dateipfad
        Returns:
        Dateiname ohne Pfad
        Throws:
        java.lang.Exception
      • getPath

        public static java.lang.String getPath​(java.lang.String fileName)
                                        throws java.lang.Exception
        Gibt den Pfadanteil eines kompletten Dateinamens zurück. Wenn kein Pfad-Separator vorhanden ist, dann wird der komplette Ausdruck als Pfad angesehen.
        Parameters:
        fileName - Kompletter Dateipfad
        Returns:
        Dateipfad
        Throws:
        java.lang.Exception
      • getExt

        public static java.lang.String getExt​(java.io.File file)
                                       throws java.lang.Exception
        Gibt die Extension eines Dateinamens ohne führenden Punkt zurück. Wenn keine Extension vorhanden ist, dann wird ein Leerstring und keine Null geliefert. Wenn der Dateiname null ist, dann wird eine null zurückgegeben.
        Parameters:
        file - Datei
        Returns:
        Dateiendung ohne führenden Punkt
        Throws:
        java.lang.Exception
      • getExt

        public static java.lang.String getExt​(java.lang.String fileName)
                                       throws java.lang.Exception
        Gibt die Extension eines Dateinamens ohne führenden Punkt zurück. Wenn keine Extension vorhanden ist, dann wird ein Leerstring und keine Null geliefert. Wenn der Dateiname null ist, dann wird eine null zurückgegeben.
        Parameters:
        fileName - Dateiname
        Returns:
        String Dateiendung ohne führenden Punkt
        Throws:
        java.lang.Exception
      • changeExt

        public static java.io.File changeExt​(java.io.File file,
                                             java.lang.String newExt)
                                      throws java.lang.Exception
        Ändert die Extension einer Datei auf eine neue Extension um. Falls die Datei noch keine Extension hatte, wird die neue einfach angefügt.
        Parameters:
        file - Originaldatei mit oder ohne Dateindung
        newExt - Neue Dateiendung, mit oder ohne führenden Punkt
        Returns:
        Neue Datei mit der neuen Dateiendung
        Throws:
        java.lang.Exception
      • changeExt

        public static java.lang.String changeExt​(java.lang.String fileName,
                                                 java.lang.String newExt)
                                          throws java.lang.Exception
        Ändert die Extension einer Datei auf eine neue Extension um. Falls die Datei noch keine Extension hatte, wird die neue einfach angefügt.
        Parameters:
        fileName - Originalname mit oder ohne Dateiendung
        newExt - Neue Dateiendung, mit oder ohne führenden Punkt
        Returns:
        Neuer Name mit der neuen Dateiendung
        Throws:
        java.lang.Exception
      • hasExtension

        public static boolean hasExtension​(java.io.File file,
                                           java.lang.String fileExtension)
                                    throws java.lang.Exception
        True, falls die angegebene Datei die angegebene Dateiendung besitzt.
        Parameters:
        file - Datei
        fileExtension - Dateiendung
        Returns:
        Datei besitzt die Dateiendung
        Throws:
        java.lang.Exception
      • createEcdFile

        public static java.io.File createEcdFile​(java.lang.String archiveName,
                                                 de.elo.ix.client.Sord sord)
                                          throws java.lang.Exception
        Erzeugt eine ECD-Datei für den angegebenen Archiveintrag.
        Parameters:
        archiveName - Archivbezeichnung
        sord - Archiveintrag
        Returns:
        ECD-Datei
        Throws:
        java.lang.Exception
      • createEcdFile

        public static java.io.File createEcdFile​(java.lang.String archiveName,
                                                 de.elo.ix.client.Sord sord,
                                                 java.io.File targetDir)
                                          throws java.lang.Exception
        Erzeugt eine ECD-Datei für den angegebenen Archiveintrag im angegebenen Verzeichnis.
        Parameters:
        archiveName - Archivbezeichnung
        sord - Archiveintrag
        targetDir - Zielverzeichnis
        Returns:
        ECD-Datei
        Throws:
        java.lang.Exception
      • createEcdFile

        public static java.io.File createEcdFile​(IXconnect ixConnect,
                                                 int objId,
                                                 java.io.File targetDir)
                                          throws java.lang.Exception
        Erzeugt eine ECD-Datei für die angegebene Objekt-ID im angegebenen Zielverzeichnis.
        Parameters:
        ixConnect - Index Server Verbindung
        objId - ID des Archiveintrags
        targetDir - Zielverzeichnis oder null für das temporäre Java Verzeichnis
        Returns:
        ECD-Datei
        Throws:
        java.lang.Exception
      • getLegalArchiveElementName

        public static java.lang.String getLegalArchiveElementName​(IXconnect ixConnect,
                                                                  java.lang.String archElemName)
                                                           throws byps.RemoteException,
                                                                  java.lang.Exception
        Liefert eine gültige Bezeichnung für den angegebenen Archiveintrag zurück.
        Parameters:
        ixConnect - Index Server Verbindung
        archElemName - Bezeichnung des Archivelements
        Returns:
        Bezeichnung ohne die ungültigen Zeichen
        Throws:
        byps.RemoteException
        java.lang.Exception
      • getLegalFileName

        public static java.lang.String getLegalFileName​(IXconnect ixConnect,
                                                        java.lang.String fileName)
                                                 throws java.lang.Exception
        Liefert einen gültigen Dateinamen aus dem übergebenen Dateinamen zurück. Wenn der Dateiname länger als die maximal erlaubte Länge ist dann wird der Name abgeschnitten.
        Parameters:
        ixConnect - Index Server Verbindung
        fileName - Dateinamen
        Returns:
        Gültiger Dateiname
        Throws:
        java.lang.Exception
      • getNameWithoutExtension

        public static java.lang.String getNameWithoutExtension​(java.lang.String filePath)
                                                        throws java.lang.Exception
        Liefert zu einem kompletten Dateipfad wie "D:\Beispiele\Test.txt" den Dateinamen ohne Dateiendung, im Beispiel also "Test".
        Parameters:
        filePath - Kompletter Dateipfad
        Returns:
        Dateiname ohne Endung
        Throws:
        java.lang.Exception
      • getLegalAttachmentFileName

        public static java.lang.String getLegalAttachmentFileName​(IXconnect ixConnect,
                                                                  java.lang.String attachFileName)
                                                           throws java.lang.Exception
        Liefert eine falls notwendig abgekürzte Dateibezeichnung zurück.
        Parameters:
        ixConnect - Index Server Verbindung
        attachFileName - Dateiname
        Returns:
        Bezeichnung der Dateianbindung
        Throws:
        java.lang.Exception
      • getEswFile

        public static java.io.File getEswFile​(java.io.File file)
                                       throws java.lang.Exception
        Liefert die es8-Datei für die angegebene Datei zurück.
        Parameters:
        file - Datei
        Returns:
        es8-Datei
        Throws:
        java.lang.Exception
      • getIndexFile

        public static java.io.File getIndexFile​(java.io.File file)
                                         throws java.lang.Exception
        Liefert die Index-Datei für die angegebene Datei zurück.
        Parameters:
        file - Dokumentendatei
        Returns:
        Indexdatei
        Throws:
        java.lang.Exception
      • getEtfFile

        public static java.io.File getEtfFile​(java.io.File file)
                                       throws java.lang.Exception
        Liefert die ETF-Datei zu der angegebenen Datei zurück.
        Parameters:
        file - Datei
        Returns:
        File ETF-Datei
        Throws:
        java.lang.Exception
      • getEwfFile

        public static java.io.File getEwfFile​(java.io.File file)
                                       throws java.lang.Exception
        Liefert die ewf-Datei zur angegebenen Datei zurück.
        Parameters:
        file - normale Datei
        Returns:
        File ewf-Datei
        Throws:
        java.lang.Exception
      • getLockFile

        public static java.io.File getLockFile​(java.io.File file)
                                        throws java.lang.Exception
        Liefert die lock-Datei zur angegebenen Datei zurück.
        Parameters:
        file - normale Datei
        Returns:
        lock-Datei
        Throws:
        java.lang.Exception
      • getTempDir

        public static java.io.File getTempDir()
        Liefert das temporäre Java Verzeichnis zurück.
        Returns:
        Temporäres Java Verzeichnis
      • getFileContentMap

        public static java.util.HashMap<java.lang.String,​java.lang.String> getFileContentMap​(java.io.File file)
                                                                                            throws java.lang.Exception
        Liefert eine HashMap mit dem Dateiinhalt zurück.
        Parameters:
        file - Datei mit den Textbegriffen (z.B. ini-Datei)
        Returns:
        HashMap mit dem Dateiinhalt
        Throws:
        java.lang.Exception
      • getFileLines

        public static java.util.ArrayList<java.lang.String> getFileLines​(java.io.File file)
                                                                  throws java.lang.Exception
        Liefert eine Liste mit den Zeilen der angegebenen Datei zurück. Die Datei soll in UTF-8 Format vorliegen und kann mit einem BOM anfangen. Leere Zeilen und Kommentarzeilen werden ignoriert.
        Parameters:
        file - Zu lesende Datei
        Returns:
        Liste mit den Zeilen der Datei
        Throws:
        java.lang.Exception
      • getValue

        public static java.lang.String getValue​(java.io.File iniFile,
                                                java.lang.String key)
                                         throws java.lang.Exception
        Liefert den Wert des angegebenen Schlüssels zurück.
        Parameters:
        iniFile - INI-Datei
        key - Schlüssel
        Returns:
        Wert oder null
        Throws:
        java.lang.Exception
      • deleteFiles

        public static void deleteFiles​(java.util.List<java.io.File> files)
                                throws java.lang.Exception
        Löscht die angegebenen Dateien.
        Parameters:
        files - Liste mit Dateien
        Throws:
        java.lang.Exception
      • deleteDirectoryFiles

        public static boolean deleteDirectoryFiles​(java.io.File directory)
                                            throws java.lang.Exception
        Löscht die vorhandenen Elemente im angegebenen Verzeichnis und meldet zurück, ob alle Elemente gelöscht wurden.
        Parameters:
        directory - Verzeichnis
        Returns:
        alle Unterelemente wurden gelöscht
        Throws:
        java.lang.Exception
      • deleteTempFileAndFolder

        public static boolean deleteTempFileAndFolder​(java.io.File tempFile)
                                               throws java.lang.Exception
        Löscht die angegebene temporäre Datei mit dem übergeordneten Ordner.
        Parameters:
        tempFile - temporäre Datei
        Returns:
        Beide Dateien wurden gelöscht
        Throws:
        java.lang.Exception
      • getRootFiles

        public static java.util.ArrayList<java.io.File> getRootFiles()
        Liefert eine Liste mit den Hauptverzeichnissen auf dem System zurück.
        Returns:
        Liste mit Hauptverzeichnissen
      • hasFullAccess

        public static boolean hasFullAccess​(java.io.File file)
                                     throws java.lang.Exception
        Meldet zurück, ob auf die angegebene Datei normal zugegriffen werden kann.
        Parameters:
        file - Datei
        Returns:
        Datei kann verwendet werden
        Throws:
        java.lang.Exception
      • getReadableFilesize

        public static java.lang.String getReadableFilesize​(java.io.File file)
                                                    throws java.lang.Exception
        Liefert die Dateigröße als einen gut für Menschen lesbaren String zurück.
        Parameters:
        file - Datei
        Returns:
        Dateigröße
        Throws:
        java.lang.Exception
      • addIllegalChar

        public static void addIllegalChar​(char c)
        Fügt das angegebene ungültige Zeichen in der internen Liste mit den ungültigen Zeichen ein.
        Parameters:
        c - ungültiges Zeichen
      • getParentFolderByName

        public static java.io.File getParentFolderByName​(java.io.File file,
                                                         java.lang.String parentName)
                                                  throws java.lang.Exception
        Liefert den übergeordneten Ordner mit dem angegebenen Namen zurück.
        Parameters:
        file - Datei
        parentName - Name des übergeordneten Ordners
        Returns:
        Übergeordneten Ordner
        Throws:
        java.lang.Exception