Es gibt viele sich wiederholende Aufgaben, die Sie möglicherweise von Zeit zu Zeit erledigen müssen. Ein Beispiel ist, wenn Sie regelmäßig Änderungen an Dateien auf Ihrem lokalen Computer vornehmen müssen. Diese Aktionen können das Kopieren, Verschieben, Löschen oder Archivieren von Dateien umfassen.

Anstatt diese sich wiederholenden Aufgaben manuell zu erledigen, können Sie sie mit einem Programm automatisieren. Sie können dies mit einer einzigen Skriptdatei tun, indem Sie eine der vielen verfügbaren Programmiersprachen wie Java verwenden.

So richten Sie die Java-Anwendung ein

Stellen Sie zunächst sicher, dass dies der Fall ist Das Java SE Development Kit von Oracle Eingerichtet. Erstellen Sie dann eine einfache Java-Konsolenanwendung:

  1. Erstellen Sie irgendwo auf Ihrem Computer eine Datei mit dem Namen SimpleScript.java.
  2. Öffnen Sie die Datei in einem Texteditor oder einer IDE.
  3. Importieren Sie oben in der Datei die IOException-Klasse. Dadurch können Sie datei- oder IO-bezogene Ausnahmen behandeln, wenn Sie versuchen, bestimmte Funktionen auszuführen, z. B. das Kopieren einer Datei.
    instagram viewer
    importieren java.io. IOException;
  4. Unten hinzufügen die wichtigste Java-Klasse und die hauptsächlich Methode. Die Hauptmethode wird ausgeführt, wenn Sie die Anwendung starten. Drucken Sie vorerst nur eine Nachricht aus, um sicherzustellen, dass das Programm ordnungsgemäß ausgeführt wird. Danach können Sie den Inhalt der Hauptfunktion durch eines der folgenden Beispiele ersetzen, um sie zu testen.
    KlasseSimpleScript{ 
    ÖffentlichkeitstatischLeerehauptsächlich(String-Argumente[])wirft IOException {
    System.out.println("Einfache Konsolen-App");
    }
    }
  5. Um das Skript auszuführen, navigieren Sie zunächst über eine Befehlszeile zum Speicherort Ihrer Java-Datei. Wenn Sie Ihre Datei beispielsweise auf dem Desktop gespeichert haben, lautet der Befehl:
    CD Schreibtisch
  6. Speichern Sie die Datei und verwenden Sie die Java Befehl, um es zu kompilieren. Jedes Mal, wenn Sie Änderungen an der Datei vornehmen, müssen Sie sie neu kompilieren Java.
    javac SimpleScript.java
  7. Führen Sie die Anwendung aus:
    Java-SimpleScript

So greifen Sie auf lokale Dateien auf Ihrem Computer zu

Sie können die File-Klasse verwenden, um programmgesteuert auf Dateien in einem Verzeichnis zuzugreifen.

  1. Erstellen Sie einen neuen Ordner mit dem Namen NeuesVerzeichnis, im selben Verzeichnis wie Ihre Java-Datei. Erstellen Sie einige Dateien darin – es können leere Textdateien sein, wenn Sie möchten.
  2. Importieren Sie oben in Ihrer Java-Anwendung die File-Klasse. Dadurch können Sie auf bestimmte Methoden und andere Funktionen zugreifen, die sich auf Betriebssystemdateien und -verzeichnisse beziehen.
    importieren java.io. Datei;
  3. Erstellen Sie ein neues Dateiobjekt unter Verwendung des relativen Pfads zu Ihrem neuen Ordner.
    Dateiverzeichnis = Neu Datei("NeuesVerzeichnis");
  4. Verwenden Sie die Funktion listFiles(), um auf eine Liste aller Dateien in diesem Verzeichnis zuzugreifen.
    File[] listOfFiles = directory.listFiles();

    zum (Datei file: listOfFiles) {
    System.out.println (Datei);
    }

  5. Kompilieren Sie das Programm erneut und führen Sie es mit der Java und Java Befehle.

So kopieren Sie Dateien an einen anderen Ort

Es gibt mehrere Möglichkeiten, Dateien zu kopieren. Eine gängige Methode zum Kopieren von Dateien (insbesondere vor Java 7 und dem Paket java.nio.file) ist die Verwendung der Klassen FileInputStream oder FileOutputStream.

  • Das FileInputStream -Klasse können Sie einen Eingabestream öffnen, um Bytes aus einer Datei zu lesen.
  • Das FileOutputStream -Klasse können Sie einen Ausgabestream öffnen, um Bytes in eine Datei zu schreiben.

Beim Kopieren von Dateien besteht die Idee darin, einen Eingabe- und Ausgabestream zu öffnen. Mit diesen Streams lesen Sie die Bytes der Datei am Quellspeicherort und schreiben diese Bytes dann an den neuen Speicherort.

In diesem Beispiel wird eine neuere Implementierung zum Kopieren von Dateien verwendet, indem die Funktion copy() aus der Klasse Files des Pakets java.nio.file verwendet wird. Um das Paket java.nio.file verwenden zu können, muss Java 7 oder höher installiert sein.

  1. Importieren Sie oben in der Datei die Klassen File und Path aus dem Paket java.nio.file.
    importieren java.nio.file. Dateien;
    importieren java.nio.file. Pfade;
  2. Fügen Sie eine neue Datei mit dem Namen hinzu FileToCopy.txt im selben Verzeichnis wie Ihre Java-Datei. Deklarieren Sie in der Funktion main() den relativen Pfad zu dieser Datei.
    String copySource = "FileToCopy.txt"; 
  3. Erstellen Sie einen neuen Ordner mit dem Namen Neuer Ordner, um die Datei zu kopieren. Fügen Sie den relativen Pfad zum Ziel in der Funktion main() hinzu.
    String copyDestination = "NewFolder/FileToCopy.txt";
  4. Verwenden Sie die Methode copy(), um die Datei von ihrer Quelle zum Ziel zu kopieren.
    Versuchen {
    Files.copy (Paths.get (copySource), Paths.get (copyDestination));
    } Fang(Ausnahme e) {
    System.out.println("Die Spezifikationsdatei konnte nicht kopiert werden in: " + copyDestination
    + ". Prüfen wenn der Ordner oder die Datei existiert bereits.");
    }
  5. Kompilieren Sie das Programm erneut und führen Sie es mit der Java und Java Befehle.
  6. Öffnen Sie den neuen Ordner, um zu bestätigen, dass das Programm Ihre Datei kopiert hat.

So verschieben Sie Dateien oder Ordner

Sie können Dateien oder Ordner mit verschieben Bewegung() -Funktion in der Files-Klasse, die auch Teil des java.nio.file-Pakets ist.

  1. Erstellen Sie einen neuen Ordner mit dem Namen DirectoryToMove im selben Ordner wie Ihre Java-Datei.
  2. Erstellen Sie einen zweiten Ordner mit dem Namen NeuesVerzeichnis im selben Ordner. Hierhin verschiebt das Programm den ursprünglichen Ordner.
  3. Erstellen Sie Dateiobjekte für das Verzeichnis, das Sie verschieben möchten, und den Speicherort, an den Sie es verschieben möchten:
    Datei moveSource = Neu File("DirectoryToMove");
    Datei moveDestination = Neu File("NewDirectory/DirectoryToMove");
  4. Verwenden Sie die Dateien.move() Methode zum Verschieben der Datei von der Quelle zum Ziel:
    Versuchen {
    Files.move (moveSource.toPath(), moveDestination.toPath());
    System.out.println("Verzeichnis erfolgreich verschoben.");
    } Fang (IOException ex) {
    ex.printStackTrace();
    }
  5. Kompilieren Sie das Programm erneut und führen Sie es mit der Java und Java Befehle.
  6. Öffnen Sie den Ordner „NewDirectory“, um zu sehen, dass sich der Ordner „DirectoryToMove“ jetzt darin befindet.

So löschen Sie eine Datei

Du kannst den... benutzen löschen() -Methode aus der File-Klasse, um eine bestimmte Datei zu löschen.

  1. Erstellen Sie eine Datei namens FileToDelete.txt. Speichern Sie die Datei im selben Ordner wie Ihre Java-Anwendung.
  2. Erstellen Sie ein neues File-Objekt für die Datei, die Sie löschen möchten. Verwenden Sie dann die Methode delete(), um die Datei zu löschen. Die delete-Methode gibt einen wahren oder falschen Wert zurück, je nachdem, ob der Löschvorgang erfolgreich war.
    Datei fileToDelete = Neu File("FileToDelete.txt");

    wenn (fileToDelete.delete()) {
    System.out.println("Datei erfolgreich gelöscht.");
    } anders {
    System.out.println("Die Datei kann nicht gelöscht werden.");
    }

So komprimieren Sie Dateien

Es gibt viele Möglichkeiten, ein Zip-Archiv zu erstellen enthält mehrere komprimierte Dateien. In diesem Beispiel wird die verwendet ZipOutputStream und ZipEintrag Klassen.

  1. Importieren Sie die erforderlichen ZipOutputStream-, ZipEntry- und FileOutputStream-Klassen am Anfang der Datei.
    importieren java.util.zip. ZipOutputStream;
    importieren java.util.zip. ZipEntry;
    importieren java.io. FileOutputStream;
  2. Erstellen Sie die ZIP-Datei und eine Liste mit zipEntry-Objekten, die die Textdateien darstellen, die Sie komprimieren möchten. In diesem Beispiel werden neue Textdateien generiert, aber Sie können das Skript später ändern, um bereits vorhandene Textdateien einzuschließen.
    Datei zipFile= Neu File("ZippedFile.zip");
    ZipEntry[] ZipEntries = Neu ZipEintrag[] {Neu ZipEntry("zipDatei1.txt"),
    Neu ZipEntry("zipDatei2.txt"), Neu ZipEntry("zipDatei3.txt")};
  3. Erstellen Sie den ZIP-Ausgabestream, um Daten in die ZIP-Datei zu schreiben.
    ZipOutputStream out = Neu ZipOutputStream(Neu FileOutputStream (zipDatei));
  4. Fügen Sie jede Datei dem ZIP-Ordner hinzu und schließen Sie den Stream.
    zum (ZipEntry zipEntry: zipEntries) {
    out.putNextEntry (zipEintrag);

    StringBuilder sb = Neu StringBuilder();
    sb.append("Inhalt in Textdatei");

    Byte[] data = sb.toString().getBytes();
    out.write (Daten, 0, Datenlänge);
    out.closeEntry();
    }

    out.close();

  5. Kompilieren Sie das Programm erneut und führen Sie es mit der Java und Java Befehle. Sie werden sehen, dass der neue ZIP-Ordner in Ihrem Dateiverzeichnis erscheint.

Automatisierung einfacher Aufgaben mit Java

Sie können ein Skript verwenden, um sich wiederholende Dateimanageraufgaben programmgesteuert auszuführen. Zu diesen Aufgaben gehören das Zugreifen auf, Kopieren, Verschieben, Löschen und Komprimieren von Dateien.

Eine andere Möglichkeit, sich wiederholende Aufgaben zu automatisieren, ist die Verwendung von Systembefehlen in einer Skriptdatei. Unter Linux und macOS werden solche Dateien als Shell-Skripte bezeichnet, während Windows sie als Batch-Skripte bezeichnet.