四时宝库

程序员的知识宝库

Java文件系统(java文件系统管理)

文件系统

FileSystem类的对象表示Java程序中的文件系统。

FileSystem对象用于执行两个任务:

  • Java程序和文件系统之间的接口。
  • 一个工厂用于创建许多类型的文件系统相关对象和服务。

FileSystem对象与平台相关。

创建文件系统

要获取默认的FileSystem对象,我们需要使用FileSystems类的getDefault()静态方法,如下所示:

FileSystem fs = FileSystems.getDefault();

FileSystem由一个或多个FileStore组成。FileSystem的getFileStores()方法返回FileStore对象的Iterator。

FileSystem的getRootDirectories()方法返回Path对象的迭代器,它表示到所有顶级目录的路径。

FileSystem的isReadOnly()方法告诉我们是否获得对文件存储的只读访问权限。

例子

以下代码显示如何使用FileSystem对象。

import java.nio.file.FileStore;
import java.nio.file.FileSystem;
import java.nio.file.FileSystems;
import java.nio.file.Path;
import java.io.IOException;
public class Main {
 public static void main(String[] args) {
 FileSystem fs = FileSystems.getDefault();
 System.out.println("Read-only file system: " + fs.isReadOnly());
 System.out.println("File name separator: " + fs.getSeparator());
 for (FileStore store : fs.getFileStores()) {
 printDetails(store);
 }
 for (Path root : fs.getRootDirectories()) {
 System.out.println(root);
 }
 }
 public static void printDetails(FileStore store) {
 try {
 String desc = store.toString();
 String type = store.type();
 long totalSpace = store.getTotalSpace();
 long unallocatedSpace = store.getUnallocatedSpace();
 long availableSpace = store.getUsableSpace();
 System.out.println(desc + ", Total: " + totalSpace + ", Unallocated: "
 + unallocatedSpace + ", Available: " + availableSpace);
 } catch (IOException e) {
 e.printStackTrace();
 }
 }
}

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接