Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Java Grundkurs 3: Generische Programmierung, Datenströme, Datumsrechnung

Datei kopieren

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
In diesem Video lernen Sie die NIO2 API kennen. Dabei zeigt Ihnen der Trainer, wie einfach das Kopieren einer Datei mit der NIO2 API programmiert werden kann.

Transkript

In diesem Video werde ich Ihnen die NIO2 API vorstellen, die bereits mit Java SE7 veröffentlich wurde und mit der die Handhabe von Dateizugriffen mit Java wesentlich optimiert wurde. Fangen wir also gleich mit der Praxis an, in dem wir versuchen die Datei hier links zu kopieren. Ich beginne, indem ich auf die Quelldatei zugreife. Eine Datei wird in der NIO2 API durch die Klasse Path repräsentiert Ich schreibe also Path, die Klasse Path hin und hier sehen Sie, dass die Klasse Path im Package Java.nio.file vorhanden ist und die Variable nenne ich source. Wie der Name der Klasse Path schon vermuten lässt, handelt es sich bei einem Path nicht nur um eine Repräsentation einer Datei, sondern grundsätzlich auch um eine Repräsentation eines Verzeichnisses. Wir haben also eine Variable deklariert, bei der noch gar nicht feststeht, ob es sich um eine Datei oder um ein Verzeichnis handelt. Nun muss ich dieser Variablen hier irgendwie ein Objekt des Typs Path zuweisen, das meine Quelldatei referenziert. Also füge ich einen Zuweisungsoperator hinzu, und für die Initialisierung setze ich eine Klasse ein, die sich Path nennt. Denn die Klasse Path bietet eine Get-Methode an, mit der ich die Quelldatei als Typ der Klasse Path erhalte. Also Path, diese hier und dann .get und dann sehen Sie, dass wir hier zwei Varianten, zwei überladene Get-Methoden zur Verfügung haben. Ich wähle die zweite. Die Methode Get erwartet nun eine Angabe, mit der sie den Standort der Datei festmachen kann. Für unsere Kopieraktion werde ich eine Zeichenkette übergeben und hierbei kann ich die Quelldatei mit einem absoluten Pfad angeben oder auch mit einem relativen Pfad. Die relative Pfadangabe wird vom Default-Verzeichnis ausgehen, so wie Sie es von der herkömmlichen IO-API in den letzten Videos beziehungsweise im letzten Kapitel gewohnt sind. Das bedeutet, dass wir in unserem Programmierbeispiel wieder einfach nur den Dateinamen setzen können. Dabei wird die Datei von der Konsole aus dort gesucht, wo das Programm aufgerufen wurde, weil dies im Standardfall als Arbeitsverzeichnis gesehen wird. Eclipse ändert das aktuelle Verzeichnis vor der Ausführung der Laufzeitumgebung und zwar in das Projektverzeichnis,sodass unsere Quelldatei dort gefunden wird Ich kann also in die Hochkommata einfach nur java.jpg schreiben Genauso können wir bei der Zieldatei vorgehen. Auch die Zieldatei werde ich mit Path deklarieren. Das heißt ich deklariere eine Variable des Typs Path. Die Variable nenne ich target und den target besorge ich mir über Paths.get und auch dort werde ich wieder eine Zeichenkette nutzen, um mit einer relativen Pfadangabe anzuzeigen, wohin die Datei kopiert werden soll. Also kopie.jpg soll meine kopierte Datei sein. Und jetzt sehen Sie gleich, wie einfach das Kopieren mit der NIO2 API geht. Und zwar werde ich zum Kopieren der Datei ganz einfach nur die Methode Copy der Klasse Files aufrufen. Also Files.copy und der Methode Copy übergebe ich ganz einfach bloß die Variable source und die Variable target und schon bin ich fast fertig. Weil die Methode copy eine IOException auslöst, werde ich mir von Eclipse helfen lassen und einfach nur eine Throws Declaration hier oben bei dem Konstruktor anbringen und auch in der Main Methode. Somit umgehe ich die Fehlerbehandlung. Und das probiere ich einmal aus. Ich drücke auf Play, Refreshe mein Projekt-Verzeichnis über F5 und dann sehen Sie, dass ich jetzt eine kopie der Datei java.jpg erzeugt habe. In diesem Video habe ich Ihnen gezeigt, wie einfach das Kopieren einer Datei mit der NIO2 API programmiert werden kann. Und wie Sie sehen, funktioniert das Beispiel genauso, wie wir es mit der IO API über In- output streams Low-Level-mäßig programmiert hatten, nur dass die Programmierung nun viel knapper und komfortabler ist. Dies bedeutet, dass die Byte und Character Stream-Klassen des Paketes Java IO zwar nach wie vor gültig sind, aber eher als Low-Level- Programmierung betrachtet werden.

Java Grundkurs 3: Generische Programmierung, Datenströme, Datumsrechnung

Steigen Sie tiefer in die Java-Programierung ein und lernen Sie den Umgang mit generischen Typen, Lamda-Ausdrücken, DAtenströmen und mit Datums- und Zeitberechnung.

5 Std. 24 min (47 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Hersteller:
Software:
Exklusiv für Abo-Kunden
Erscheinungsdatum:09.10.2016

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!