DVG2 - 07 - Dateien Dateien. DVG2 - 07 - Dateien 2 Die Klasse File Die Klasse File stellt die Verbindung zwischen dem Filesystem des Rechners und dem.

Slides:



Advertisements
Ähnliche Präsentationen
der Universität Oldenburg
Advertisements

der Universität Oldenburg
der Universität Oldenburg
Präsentation PS: Klasse File von Janko Lange, Thomas Lung, Dennis Förster, Martin Hiller, Björn Schöbel.
DVG Einfache Klassen Einfache Klassen. DVG Einfache Klassen 2 Strukturen Beispiel: Personendaten bestehen aus –String name –String vorname.
Einführung in die Programmierung Ausführbare Klassen
PKJ 2005/1 Stefan Dissmann Vorwoche - Klasse public class Studierende { private String name, vorname, studiengang; private int matNr, semester; private.
Kapselung , toString , equals , Java API
der Universität Oldenburg
10 Streams JavaHS Merseburg WS 05/06 E/A - Ströme (Streams) in Java.
3 Sprachelemente und Anweisungen JavaHS Merseburg (FH) WS 06/07 Strings (Zeichenketten)
Java: Dynamische Datentypen
Listen Richard Göbel.
Indirekte Adressierung
FH-Hof Verwaltung von Zeichenketten Richard Göbel.
Java: Grundlagen der Sprache
Java: Referenzen und Zeichenketten
Java: Grundlagen der Objektorientierung
FH-Hof Fehlerbehandlung Richard Göbel. FH-Hof Konzept Fehler können mit dem Operator throw einer übergeordneten Funktion signalisiert werden. Parameter.
IF-ELSE-IF-Ketten Weiter mit PP..
Klassenvariable. Da man für jede Kuh bzw. jede Henne auf dem Markt den gleichen Preis für ein Liter Milch, bzw. den gleichen Preis für ein Ei bekommt,
Konstruktoren.
FOR Anweisung. Aufgabe : Ausgabe aller ganzen Zahlen von 0 bis 100 auf dem Bildschirm.
DO...WHILE Anweisung.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (05 – Elementare Datenstrukturen) Prof. Th. Ottmann.
Benötigte Applets Startseite: in HTML-Format Applet auf der Startseite Das Applet, das auf der Startseite geladen wird, wird die vier Buttons und die eine.
Praktikum Entwicklung und Einsatz von Geosoftware I - Sitzung 3 Klassen, Objekte, Arrays und Kontrollstrukturen Sommersemester 2003 Lars Bernard.
Programmieren mit JAVA
PRJ 2007/1 Stefan Dissmann Motivation Problem: gleiche Datenstrukturen werden für verschiedene Objekte gebraucht: z.B. Listen von Studierenden, Kunden,
PKJ 2005/1 Stefan Dissmann Rückblick auf 2005 Was zuletzt in 2005 vorgestellt wurde: Klassen mit Attributen, Methoden und Konstruktoren Referenzen auf.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Packages Vortrag : Cornelia Hardt 23. November 1999.
1DVG3 - Paint Paint ein Zeichenprogramm. DVG3 - Paint 2 Paint – ein Zeichenprogramm.
DVG Klassenhierarchie. DVG Klassenhierarchie 4 Durch die Ableitung jeder Klasse aus genau einer Elternklasse entsteht eine Baumstruktur.
1DVG3 - anonyme Klassen Anonyme Klassen. DVG3 - anonyme Klassen 2 Syntax new BasisKlasse(Parameterliste) { Modifikationen und Erweiterungen der Basisklasse.
DVG Dateien. DVG Die Klasse File Die Klasse File stellt die Verbindung zwischen dem File-System des Rechners und dem JAVA-Programm her.
DVG Interfaces. DVG mehrfache Vererbung 4 Mehrfache Vererbung ist die Ableitung einer Klassen von mehreren anderen Klassen. –farbigerPunkt.
DVG Einführung in Java1 Einführung in JAVA.
DVG Klassen und Objekte
EDV Parallelprogrammierung1 Parallelprogrammierung mit JAVA.
DVG Klassenhierarchie Klassenhierarchie. DVG Klassenhierarchie 2 Klassenhierarchie Durch die Ableitung jeder Klasse aus genau einer Elternklasse.
Datenströme DVG Datenströme.
JDBC EDV JDBC.
05 - Reflection Das Reflection API Reflection2 Ziel Es kommt vor, dass eine Methode ein Objekt als Parameter übergeben bekommt, ohne dass bekannt.
Java in 9 Folien Besser: Online-Buch Go to Java 2.
© 2005 Pohlig - Taulien Datenströme GK Informatik 1 Datenströme.
FH-Hof 1 XML-Parser Richard Göbel. FH-Hof 2 XML-Parser- DOM Object Tree Parser Objekt der Klasse 'DocumentBuilderFactory' mit 'newInstance()' erzeugen.
Seite 1 Interface - Konzept Ein Interface führt einen neuen Datentyp ein: interface Frau {... } Das Interface enthält Deklarationen ( keine Definitionen.
PRJ 2007/1 Stefan Dissmann Verkettete datenstruktur: Liste Problem: Liste, die eine beliebige Zahl von Elementen verwaltet Operationen: Erzeugen, Anfügen,
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
Javakurs FSS 2012 Lehrstuhl Stuckenschmidt
CuP - Java Eingabe über Tastatur, AudioClips, überschreiben, Quiz Montag, 18. November 2002.
Objektorientiertes Konstruieren
Variablenkonzept Klassisch, in Java Basistyp
Die Klasse String und ihre Methoden
Optimale Ursprungsgerade
CuP - Java Neunte Vorlesung Entspricht Kapitel 4.2 und 5 des Skriptums
Verarbeitung von Char, Strings und Zeichenketten 2.
Programmiervorkurs WS 2014/15 Methoden
Voyager Eigenschaften/Vorzüge Universalität: –ROI-Modelle: CORBA, RMI, DCOM –verschiedene Namens-, Verzeichnisdienste Nachrichtentypen: synchron, oneway,
CuP - Java Achte Vorlesung Entspricht ungefähr Kapitel 4.1 des Skriptums Montag, 28. Oktober 2002.
3. Beschreibung von Abläufen durch Algorithmen 3.4 Zufall
Informatik I : Software höhere Programmiersprachen Java Klassen: hat Methoden (Funktionen) und Daten (Variablen) es kann mehrere Klassen geben nur eine.
Alois Schütte Advanced System Programming 2 Interprozeßkommunikation  2.1 JVM Ablaufumgebung  2.2 Java Native Interface (JNI)  Verwendung von.
Übung Informatik I exercise01. 2 Inhaltsübersicht Nachbesprechung Übung 1 Individuelle Fragen/Bemerkungen.
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Java-Kurs Übung Besprechung der Hausaufgabe
Java I/O Input / Output stream Library
Java I/O Input / Output stream Library
Implementieren von Klassen
 Präsentation transkript:

DVG Dateien Dateien

DVG Dateien 2 Die Klasse File Die Klasse File stellt die Verbindung zwischen dem Filesystem des Rechners und dem JAVA-Programm her. Das Filesystem enthält als Objekte Devices, Verzeichnisse und Dateien. Sie werden durch ihre Namen eindeutig gekennzeichnet. Die Klasse File : –Bildet Objekte des Filesystems auf Instanzen der Klasse File ab. –Stellt die Verbindung zwischen Datei und Dateinamen her. –Ermöglicht das Lesen von Verzeichnissen. –Ermöglicht das Lesen von Attributen von Dateien und Verzeichnissen. –Ermöglicht das Erzeugen, Löschen, Umbenennen und Modifizieren von Dateien und Verzeichnissen. –Stellt eine vom Betriebsystem unabhängige Schnittstelle zur Verfügung.

DVG Dateien 3 Attribute der Klasse File static String pathSeparator –liefert die Zeichenkette, die Pfadeinträge im PATH trennt –UNIX : ":" –WINDOWS: ";" static char pathSeparatorChar –das gleiche als Zeichen static String separator –liefert die Zeichenkette, die Verzeichnisse im Pfad trennt –UNIX : "/" –WINDOWS: "\\" static char separatorChar –das gleiche als Zeichen

DVG Dateien 4 Konstruktoren der Klasse File File (String pathname) –erzeugt ein File -Objekt mit pathname als Pfad File (String parent, String child) –erzeugt ein File -Objekt mit einem Pfad child ggf. relativ zu parent File (File parent, String child) Konstruktoren öffnen die Dateien nicht! Es erfolgt kein Zugriff zum Filesystems.

DVG Dateien 5 Statische Methoden der Klasse File static File createTempFile(String prefix, String suffix, File directory) static File createTempFile(String prefix, String suffix) –erzeugen temporäres File mit dem Namen: prefix....suffix im Standard-Verzeichnis für temporäre Dateien bzw. im Verzeichnis directory static File [] listRoots() –erzeugt ein Feld von File -Objekten, die auf die Wurzelverzeichnisse zeigen, z.B.: Windows: A:\ C:\ D:\

DVG Dateien 6 Methoden der Klasse File boolean canRead() // Test ob Datei lesbar ist boolean canWrite() // Test ob Datei schreibbar ist boolean exists() // Test ob Datei existiert boolean isAbsolute() // Test ob Pfad absolut ist boolean isDirectory() // Test ob File ein Verzeichnis ist boolean isFile() // Test ob File eine Datei ist boolean isHidden() // Test ob Datei versteckt ist long lastModified() // Zeit der letzten Modifikation in Millisekunden seit GMT boolean setLastModified(long time) // setzt Zeit der letzten Modifikation boolean setReadOnly() // setzt das File auf ReadOnly

DVG Dateien 7 int compareTo(File pathname) vergleicht die Pfadnamen unter Berücksichtigung der Eigenschaften des Filesystems (z.B.: Groß- und Kleinschreibung) –f1.compareTo(f2) == 0 wenn Pfadnamen gleich –f1.compareTo(f2) < 0 wenn Pfadnamen von f1 vor f2 –f1.compareTo(f2) > 0 wenn Pfadnamen von f1 nach f2 int compareTo(Object o) File implementiert Comparable boolean equals (Object o) –f1.equals(f2) == true wenn Pfadnamen gleich

DVG Dateien 8 boolean createNewFile() // erzeugt eine neue leere Datei, falls sie noch nicht existiert boolean delete() // löscht das File void deleteOnExit() // löscht das File nach dem Ende des Programms boolean mkdir() // erzeugt ein neues Verzeichnis boolean mkdirs() // erzeugt ein neues Verzeichnis incl. aller erforderlichen Zwischenverzeichnisse boolean renameTo(File dest) // benennt eine Datei um

DVG Dateien 9 File getAbsoluteFile() // gibt das File mit absolutem Pfadnamen aus String getAbsolutePath() // gibt den absoluten Filenamen aus File getCanonicalFile() // gibt das File mit kanonischem Pfadnamen aus String getCanonicalPath() String getName() // gibt den evtl. relativen Filenamen aus String getParent() // gibt das Elternverzeichnis aus File getParentFile() String getPath() long length() // gibt die Länge der Datei aus String toString() // wie getName() URL toURL() // gibt den Filenamen in Form eines URLs aus

DVG Dateien 10 int hashCode() String [] list() // gibt eine Liste aller in der Datei enthaltenen Dateien und Unterverzeichnisse aus String [] list(FilenameFilter filter) File [] listFiles() File [] listFiles(FileFilter filter) File [] listFiles(FilenameFilter filter)

DVG Dateien 11 Das Interface FileFilter Mit Hilfe einer Implementation des Interfaces FileFilter kann in der listFiles-Methode der Klasse File eine Auswahl der auszugebenden File-Objekte getroffen werde. Einzige zu implementierende Methode: public boolean accept(File pathname) gibt true zurück, wenn das File-Objekt ausgewählt werden soll und false sonst

DVG Dateien 12 Das Interface FileNameFilter Mit Hilfe einer Implementation des Interfaces FileNameFilter kann in der list- und der listFiles-Methode der Klasse File eine Auswahl der auszugebenden File-Objekte getroffen werde. Einzige zu implementierende Methode: public boolean accept(File dir, String name) gibt true zurück, wenn das File-Objekt ausgewählt werden soll und false sonst

DVG Dateien 13 Beispiel: Verzeichnisinhalt anzeigen import java.io.*; public class Dir { public static void main (String [] args) throws IOException { String dName = (args.length>0?args[0]:"."); File d = new File(dName); if ( d.exists() ) { file(d); if (d.isDirectory()) dir(d); } else System.err.println("File "+dName+" existiert nicht!"); }

DVG Dateien 14 static void file(File d) { System.out.println((d.canRead()?"R":" ")+ (d.canWrite()?"W":" ")+ (d.isHidden()?"H":" ")+(d.isDirectory()?"D":"")+ (d.isFile()?"F":"")+" : "+d.length()+"\t"+ " : "+(new java.util.Date(d.lastModified()))+" : "+d); } static void dir(File d){ System.out.println("Verzeichnis : "+d); File [] files = d.listFiles(); for (int i=0;i<files.length;i++) file(files[i]); for (int i=0;i<files.length;i++) if (files[i].isDirectory()) dir(files[i]); } }

DVG Dateien 15 Beispiel: Verzeichnisinhalt mit Filter anzeigen import java.io.*; public class DirF { public static void main (String [] args) throws IOException { String dName = (args.length>0?args[0]:"."); File d = new File(dName); Filter fil = (args.length>1?new Filter(args[1]):null); if ( d.exists() ) { file(d); if (d.isDirectory()) dir(d, fil); } else System.err.println("File "+dName+" existiert nicht!"); }

DVG Dateien 16 static void file(File d) { System.out.println((d.canRead()?"R":" ")+ (d.canWrite()?"W":" ")+ (d.isHidden()?"H":" ")+(d.isDirectory()?"D":"")+ (d.isFile()?"F":"")+" : "+d.length()+"\t"+ " : "+(new java.util.Date(d.lastModified()))+" : "+d); } static void dir(File d, Filter fil){ System.out.println("Verzeichnis : "+d); File [] files = d.listFiles(fil); for (int i=0;i<files.length;i++) file(files[i]); for (int i=0;i<files.length;i++) if (files[i].isDirectory()) dir(files[i], fil); }

DVG Dateien 17 static class Filter implements FileFilter { private String match; Filter (String match) { this.match=match; } public boolean accept (File f) { if (f.isDirectory()) return true; try { return f.getCanonicalPath().indexOf(match)>=0; } catch (Exception e) {} return false; } } }