Heim >Java >javaLernprogramm >Wie führt der Java-I/O-Stream Dateimetadatenoperationen durch?

Wie führt der Java-I/O-Stream Dateimetadatenoperationen durch?

WBOY
WBOYOriginal
2024-04-15 14:27:021205Durchsuche

Java-E/A-Streams können mit Datei- und Verzeichnismetadaten arbeiten, einschließlich Erstellungsdatum, Änderungsdatum, Dateigröße usw. Metadaten können über die Files-Klasse oder die File-Klasse manipuliert werden. In diesem Artikel wird gezeigt, wie Sie die Dateien- und File-Klassen verwenden, um die Erstellungszeit und -größe von Dateien zu ermitteln, und wie Sie die Files-Klasse verwenden, um die Erstellungsdaten aller Dateien zu ermitteln im aktuellen Verzeichnis in Stapeln.

Java I/O流如何进行文件元数据操作?

Metadatenoperationen von Java-I/O-Streams

Java-I/O-Streams bieten die Möglichkeit, Datei- und Verzeichnismetadaten zu bearbeiten. Zu den Metadateninformationen gehören normalerweise das Erstellungsdatum, das Änderungsdatum, die Dateigröße usw. der Datei oder des Verzeichnisses.

Verwenden Sie die Klasse Files zum Bearbeiten von Metadaten. Files类操作元数据

Java 7及更高版本提供了易用的Files类,提供了丰富的API来操作文件和目录元数据。

import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.attribute.BasicFileAttributes;

public class FileMetadataExample {

    public static void main(String[] args) throws Exception {
        // 获取文件路径
        Path filePath = Paths.get("test.txt");

        // 获取文件基本属性
        BasicFileAttributes attrs = Files.readAttributes(filePath, BasicFileAttributes.class);

        // 输出文件元数据
        System.out.println("文件大小:" + attrs.size());
        System.out.println("创建时间:" + attrs.creationTime());
        System.out.println("修改时间:" + attrs.lastModifiedTime());
    }
}

使用File类操作元数据

在Java中,File类也提供了对文件元数据的访问,但其API不如Files

Java 7 und höhere Versionen bieten die benutzerfreundliche Klasse Files, die eine umfangreiche API zum Bearbeiten von Dateien bereitstellt und Verzeichnismetadaten.

import java.io.File;

public class FileMetadataExample {

    public static void main(String[] args) {
        // 获取文件
        File file = new File("test.txt");

        // 输出文件元数据
        System.out.println("文件大小:" + file.length());
        System.out.println("创建时间:" + file.lastModified());
    }
}

Verwenden Sie die Klasse File, um Metadaten zu bearbeiten

🎜In Java bietet die Klasse File auch Zugriff auf Dateimetadaten, ihre API ist jedoch nicht so gut wie Dateien ist umfangreich. 🎜
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.nio.file.attribute.BasicFileAttributes;

public class FileListMetadataExample {

    public static void main(String[] args) throws Exception {
        // 获取当前目录
        Path dirPath = Paths.get(".");

        // 遍历目录中的所有文件
        Files.list(dirPath).forEach(path -> {
            // 获取文件基本属性
            try {
                BasicFileAttributes attrs = Files.readAttributes(path, BasicFileAttributes.class);
                
                // 输出文件信息
                System.out.println(path.getFileName() + ": " + attrs.creationTime());
            } catch (Exception e) {
                // 忽略错误
            }
        });
    }
}
🎜🎜Praktischer Fall🎜🎜🎜Angenommen, wir müssen ein Programm schreiben, um das Erstellungsdatum aller Dateien im aktuellen Verzeichnis zu ermitteln. 🎜rrreee

Das obige ist der detaillierte Inhalt vonWie führt der Java-I/O-Stream Dateimetadatenoperationen durch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn