Java 获取一个系统的基本根目录

Java 获取一个系统的基本根目录

基本根目录、根文件夹或根指的是一个系统的基本或主要驱动器。它们具有最高的层次结构,是一个特定文件夹结构的起点或开始。根目录包含了其中的所有其他文件夹和文件。

根据问题陈述,我们必须获得一个系统的基本目录。目录的数量取决于系统,因为系统与系统之间是不同的。通过对一个驱动器/目录进行分区,可以创建多个驱动器/目录。

让我们探讨一下这篇文章,看看如何通过使用Java编程语言来完成。

向你展示一些实例

实例一

假设我们的系统中有5个目录。

那么程序应该列出驱动器。

Ex-
Drive C
Drive D
Drive E
Drive F
Drive G

实例二

假设我们的系统中只有一个目录。

那么这个程序应该列出驱动器。

Ex-
Drive C

算法

  • 第1步– 导入java.io.File包

  • 第2步 – 创建一个File对象的数组,使用listRoots()函数存储根目录。

  • 第3步 – 使用for循环遍历数组的所有元素并打印它们。

语法

为了获得根目录,我们需要调用文件类的一个函数,叫做listRoots()。

以下是该方法的语法 –

File[] object_name = File.listRoots()

要获得像根分区、文件类型信息或隐藏文件位这样的细节,一般不能通过文件API访问。为了使用它的方法,我们需要创建一个类对象。

以下是创建该类对象的语法 –

FileSystemView fsv = FileSystemView.getFileSystemView();

多种方法

我们提供了不同方式的解决方案

  • 打印所有根目录

  • 打印所有根目录的详细信息。

让我们逐一看看这个程序和它的输出。

方法一:打印所有根目录

在这个方法中,我们使用文件类的listRoots()方法并打印它来获得我们系统中的基本根目录。

例子

import java.io.File;
public class Main {
   public static void main(String args[]) {

      // Created an array of file objects to store the root directories
      File[] rootDrive = File.listRoots();

      // Use a for loop to print out the array elements
      for (File sysDrive : rootDrive) {
         System.out.println("Drive : " + sysDrive);
      }
   }
}

输出

Drive : /

方法2:打印所有根目录的详细信息

在这种方法中,我们使用文件类的listRoots()方法,就像前面使用FileSystemView类的方法一样,来打印目录及其类型、可用空间和总空间。

例子

import java.io.File;
import javax.swing.filechooser.FileSystemView;
public class Main {

   // Constant that stores 1 gigabyte in bytes 
   static long gbConvert = 1073741824l;
   public static void main(String args[]) {

      // Created a filesystemview object to store 
      FileSystemView fsv = FileSystemView.getFileSystemView();

      // Created an array of file objects to store the root directories 
      File[] rootDrive = File.listRoots();

      // Use a for loop to print out the array elements 
      for (File sysDrive : rootDrive) {

         // Print drive letter
         System.out.println("Drive : " + sysDrive);

         // Print the disk type
         System.out.println("Type: " +
         fsv.getSystemTypeDescription(sysDrive));

         // Print the space occupied and total space
         System.out.println("Space occupied(in GB): " + (sysDrive.getTotalSpace() - sysDrive.getFreeSpace()) / gbConvert + "/"
         + sysDrive.getTotalSpace() / gbConvert);
         System.out.println();
      }
   }
}

输出

Drive : /
Type: null
Space occupied(in GB): 122/874

在这篇文章中,我们探索了不同的方法,通过使用Java编程语言来获得基础目录及其细节。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程