Titel | Inhalt | Suchen | Index | DOC | Handbuch der Java-Programmierung, 3. Auflage
<< | < | > | >> | API | Kapitel 21 - Datei- und Verzeichnis-Handling

## 21.3 Informationen über die Datei

- 21.3 Informationen über die Datei

Die Klasse `File` besitzt eine ganze Reihe von Methoden, um Informationen über die durch das `File`-Objekt bezeichnete Datei oder das Verzeichnis zu gewinnen:

    public boolean exists()

    public boolean canWrite()
    public boolean canRead()

    public boolean isHidden()

    public boolean isFile()
    public boolean isDirectory()

    public boolean isAbsolute()

    public long lastModified()

    public long length()
| java.io.File

Mit `exists` kann getestet werden, ob die Datei oder das Verzeichnis überhaupt existiert. Die Methoden `canWrite` und `canRead` ermitteln, ob ein lesender bzw. schreibender Zugriff möglich ist, mit `isHidden` kann festgestellt werden, ob die Datei versteckt ist. Mit `isFile` und `isDirectory` kann unterschieden werden, ob es sich um eine Datei oder ein Verzeichnis handelt. `isAbsolute` gibt an, ob das Objekt mit Hilfe einer absoluten Pfadbezeichnung konstruiert wurde.

`lastModified` liefert den Zeitpunkt der letzten Änderung der Datei. Der Rückgabewert liefert die Anzahl der Millisekunden seit dem 1.1.1970 und kann entweder direkt (etwa in arithmetischen Vergleichen) oder zur Konstruktion eines `Date`-Objekts verwendet werden. Das `Date`-Objekt kann dann an die Methode `setTime` der Klasse `GregorianCalendar` übergeben werden, um die einzelnen Uhrzeitkomponenten zu extrahieren. Das folgende Beispiel illustriert diese Vorgehensweise:

    001 /* Listing2101.java */
    002
    003 import java.io.*;
    004 import java.util.*;
    005
    006 public class Listing2101
    007 {
    008   public static void main(String[] args)
    009   {
    010     File file = new File(args[0]);
    011     GregorianCalendar cal = new GregorianCalendar();
    012     cal.setTime(new Date(file.lastModified()));
    013     System.out.print("Letzte Änderung: ");
    014     System.out.println(
    015       cal.get(Calendar.DATE) + "." +
    016       (cal.get(Calendar.MONTH)+1) + "." +
    017       cal.get(Calendar.YEAR) + " " +
    018       cal.get(Calendar.HOUR_OF_DAY) + ":" +
    019       cal.get(Calendar.MINUTE) + ":" +
    020       cal.get(Calendar.SECOND)
    021     );
    022   }
    023 }
| Listing2101.java

Listing 21.1: Modifikationsdatum einer Datei ausgeben

Titel | Inhalt | Suchen | Index | DOC | Handbuch der Java-Programmierung, 3. Auflage, Addison Wesley, Version 3.0
<< | < | > | >> | API | © 1998-2002 Guido Krüger, http://www.javabuch.de