以下两个java类在windows7上测试通过。
1、给出jdk1.5版本的。
package test;
import java.io.BufferedReader;
import java.io.InputStreamReader;
public class SpaceChecker {
public static void main(String[] args) {
String os,command,line,spaceSpliter="";
Process process=null;
try {
os = System.getProperty("os.name");//获取当前操作系统,不同的系统的命令可能不同,可以根据该值采取不同的策略。
command = " wmic LogicalDisk where \"Caption='D:'\" get FreeSpace,Size";//这里以D盘为例
Runtime runtime = Runtime.getRuntime();
process = runtime.exec(command);
process.waitFor();
BufferedReader in = new BufferedReader(new InputStreamReader(
process.getInputStream()));
int counter = 0;
while ((line = in.readLine()) != null) {
counter++;
if (counter == 3)//第三行是需要的数据
break;
}
process.destroy();
line = line.trim();
for(int i=0;i<line.length();i++){
if (line.substring(i, i+1).equals(" ")) spaceSpliter+=" ";
}
String[] items = line.split(spaceSpliter);//中间是n个空格
long freeBytes = Long.parseLong(items[0]);
long totalBytes = Long.parseLong(items[1]);
System.out.println("freeSpace:"+freeBytes/1024/1024/1024+"G");
System.out.println("size:"+totalBytes/1024/1024/1024+"G");
} catch (Exception exception) {
exception.printStackTrace();
}
}
}
2、给出1.6版本的。
import java.io.File;
public class SpaceChecker {
public static void main(String[] args) {
File[] roots = File.listRoots();
for (File _file : roots) {
System.out.println(_file.getPath());
System.out.println("Free space = " + _file.getFreeSpace());
System.out.println("Usable space = " + _file.getUsableSpace());
System.out.println("Total space = " + _file.getTotalSpace());
}
}
}
分享到:
相关推荐
在Java编程语言中,获取磁盘空间信息是常见的系统管理任务之一。这通常是通过使用`java.io.File`类提供的方法来实现的。...通过理解并灵活运用这两个示例,你可以根据项目需求构建更复杂的磁盘空间管理功能。
例如,文件`example.txt`与`Example.txt`被视为两个不同的文件。 2. **移动文件**:`mv .*.swp 123.bak`表示将当前目录下所有以`.`开头、后缀为`.swp`的文件移动到名为`123.bak`的新文件或目录中。 3. **性能监控...
这个过程通常分为两步:获取磁盘的总容量和获取磁盘的已用空间。以下是对这些知识点的详细阐述: 1. **磁盘总容量获取** Java提供了一个名为`java.io.File`的类,其中的`getTotalSpace()`方法可以用来获取磁盘的总...
1. `modvbworld.bas` 和 `ModFreeSpace.bas`:这是两个Basic语言的模块文件,其中可能包含了获取磁盘空间的函数或过程。 2. `DiskFreeSpace.exe`:这是一个可执行文件,可能就是完成磁盘空间查询功能的程序本身,...
操作系统磁盘空间管理是计算机系统中的重要组成部分,它负责有效地分配和管理硬盘驱动器上的存储资源,确保数据的高效存取。在这个过程中,有两种主要的数据结构和技术被广泛使用:成组链接和索引结构。 首先,成组...
创建一个Java接口,声明C语言中的函数原型,例如`Win32FindDataW`和`GetDiskFreeSpaceExW`,这两个函数分别用于获取硬盘信息和检查磁盘空间。如下所示: ```java import com.sun.jna.platform.win32.*; public ...
通过使用这两个类,可以获取系统的内存使用情况、物理内存大小、操作系统版本、线程总数等信息。例如: ```java import java.io.*; import com.sun.management.OperatingSystemMXBean; import sun.management....
Java电话本IO版本是一个利用Java输入输出(IO)技术实现的简单电话本应用程序。这个程序可能涉及了文件读写、对象序列化等IO核心概念,用于存储和检索联系人信息。在Java中,IO框架提供了丰富的类库来处理数据的输入...
- **Swing或JavaFX**:这两个是Java的GUI(图形用户界面)框架,用于创建应用程序的用户界面。 - **网络编程**:使用Java的Socket编程来实现远程通信。 - **多线程**:在处理多个并发任务时,如监控多个目标系统,多...
总结来说,这个课程设计项目旨在通过模拟不同磁盘空间管理策略,帮助学生理解操作系统的内部工作原理,特别是磁盘空间的分配与回收机制。通过位示图法和成组链接法等具体方法的实现,可以提升对软件开发方法的理解和...
每个扇区包含一个唯一的编号(id),两个指针(left和right)分别指向相邻的扇区,以及一个value字段表示该扇区所属的分区。同时,使用SectorList类来存储和管理多个扇区,提供增加扇区(add())的方法。Action类则...
可以将两个分区连接起来,释放磁盘空间。 8. 找出耗费大量的空间的进程 知识点:进程管理、空间占用 可以使用不同的应用程序来找到耗费大量的空间的进程,例如:#ps aux | grep java。可以找到占用空间的进程并对...
通常只需要在web.xml配置文件中添加相关的监听器和过滤器,然后在你的项目中引入javamelody-1.37.0.jar和jrobin-1.5.9.jar这两个依赖库。jrobin是JavaMelody用来存储和读取监控数据的持久化组件,支持多种数据存储...
标题提到的"java上传文件jar"实际上指的是两个关键的Java库,它们是Apache Commons IO和Apache Commons FileUpload。这两个库提供了强大的文件操作和文件上传功能,是Java开发者处理文件上传问题的得力助手。 首先...
在这个项目中,Java程序可能监听特定的网络端口,等待来自客户端的请求,然后收集和发送系统性能数据,如CPU使用率、内存占用、磁盘空间等。 6. **Socket编程**:Java的Socket类是实现远程监控的关键,它允许服务器...
- `swing` 和 `awt`:这两个是Java图形用户界面(GUI)库。AWT(Abstract Window Toolkit)是早期的GUI库,而Swing是在AWT之上的更高级别组件,提供了更丰富的功能和更好的外观。在这个上下文中,它们可能被用来创建...
主要的两个环境变量是`JAVA_HOME`,它指向JDK的安装目录,以及`Path`,需要添加JDK的bin目录,这样命令行就可以识别并执行JDK中的命令。 总的来说,"java_8_64.zip"是一个为64位系统设计的JDK安装包,它提供了一...
根据题目中提供的信息,我们有以下两个下载链接: - **64位JDK 8 u152官方最新版**:文件大小为204.7MB,下载地址为: - **32位JDK 8 u152官方正式版**:文件大小为196.8MB,下载地址为: 在下载和安装过程中,请...
1. **`sysobjects`与`sysindexes`表**:这两个系统表包含了数据库中所有对象的信息。`sysobjects`存储了所有对象的基本信息,而`sysindexes`则包含了关于索引的信息。 2. **`sp_spaceused`系统存储过程**:此存储...
- **RAID 5E**:类似于RAID 5,但包含内置热备份盘,可以容忍两块硬盘故障,空间利用率降低为(N-2)/N。 3. **软件环境**: 配置过程中,用户可以通过MINI ServerRaid配置界面监控阵列状态,如物理盘和逻辑盘的...