文件系统
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();
}
}
}
为了让学习变得轻松、高效,今天给大家免费分享一套Java教学资源。帮助大家在成为Java架构师的道路上披荆斩棘。需要资料的欢迎加入学习交流群:9285,05736
网友评论