dateien
Download
Skip this Video
Download Presentation
Dateien

Loading in 2 Seconds...

play fullscreen
1 / 17

Dateien - PowerPoint PPT Presentation


  • 111 Views
  • Uploaded on

Dateien. 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 :

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Dateien' - lane


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
dateien

Dateien

DVG2 - 05 - Dateien

die klasse file
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.

DVG2 - 05 - Dateien

attribute der klasse file
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

DVG2 - 05 - Dateien

konstruktoren der klasse file
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)
  • File (URI uri)
    • URI: Uniform Resource Identifier, allgemeine standardisierte Beschreibung einer Ressource im Internet
    • Unterstützung der URIs ist neu ab Version 1.4 .
    • Es werden nur URIs unterstützt, die auf lokale allgemein zugängliche Ressourcen im Filesystem zugreifen.
    • Weierentwicklung der URLs (Uniform Resource Locator)
  • Konstruktoren öffnen die Dateien nicht! Es erfolgt kein Zugriff zum Filesystems.

DVG2 - 05 - Dateien

statische methoden der klasse file
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:\

DVG2 - 05 - Dateien

methoden der klasse file
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 1.1.1970 0.00 GMT
  • boolean setLastModified(long time) // setzt Zeit der letzten Modifikation
  • boolean setReadOnly() // setzt das File auf ReadOnly

DVG2 - 05 - Dateien

slide7
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

DVG2 - 05 - Dateien

slide8
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

DVG2 - 05 - Dateien

slide9
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
  • URI toURI() // gibt den Filenamen in Form eines URIs aus

DVG2 - 05 - Dateien

slide10
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)

DVG2 - 05 - Dateien

das interface filefilter
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

DVG2 - 05 - Dateien

das interface filenamefilter
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

DVG2 - 05 - Dateien

beispiel verzeichnisinhalt anzeigen
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!");

}

DVG2 - 05 - Dateien

slide14

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]);

}

}

DVG2 - 05 - Dateien

beispiel verzeichnisinhalt mit filter anzeigen
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!");

}

DVG2 - 05 - Dateien

slide16

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);

}

DVG2 - 05 - Dateien

slide17

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;

}

}

}

DVG2 - 05 - Dateien