Maison  >  Article  >  Java  >  Comment le flux d'E/S Java effectue-t-il les opérations sur les métadonnées des fichiers ?

Comment le flux d'E/S Java effectue-t-il les opérations sur les métadonnées des fichiers ?

WBOY
WBOYoriginal
2024-04-15 14:27:021105parcourir

Les flux d'E/S Java peuvent fonctionner sur les métadonnées des fichiers et des répertoires, y compris la date de création, la date de modification, la taille du fichier, etc. Les opérations sur les métadonnées peuvent être effectuées via la classe Files ou la classe File. Cet article montre comment utiliser les classes Files et File pour obtenir respectivement l'heure de création et la taille des fichiers, et comment utiliser la classe Files pour obtenir les dates de création de tous. fichiers dans le répertoire courant par lots.

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

Opérations de métadonnées des flux d'E/S Java

Les flux d'E/S Java offrent la possibilité d'opérer sur les métadonnées de fichiers et de répertoires. Les informations sur les métadonnées incluent généralement la date de création, la date de modification, la taille du fichier, etc. du fichier ou du répertoire.

Utilisez la classe Files pour exploiter les métadonnées 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 et les versions supérieures fournissent la classe Files facile à utiliser, qui fournit une API riche pour exploiter les fichiers et les métadonnées des répertoires.

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

Utilisez la classe File pour manipuler les métadonnées

🎜En Java, la classe File donne également accès aux métadonnées des fichiers, mais son API n'est pas aussi performante que Fichiers est riche. 🎜
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) {
                // 忽略错误
            }
        });
    }
}
🎜🎜Cas pratique🎜🎜🎜Supposons que nous devions écrire un programme pour obtenir la date de création de tous les fichiers du répertoire courant. 🎜rrreee

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn