Java中如何获得某个磁盘(根目录)比如C盘

Java中如何获得某个磁盘(根目录)比如C盘,第1张

使用sigar,

private static void file() throws Exception {

Sigar sigar = new Sigar();

FileSystem fslist[] = sigargetFileSystemList();

for (int i = 0; i < fslistlength; i++) {

Systemoutprintln("分区的盘符名称" + i);

FileSystem fs = fslist[i];

// 分区的盘符名称

Systemoutprintln("盘符名称: " + fsgetDevName());

// 分区的盘符名称

Systemoutprintln("盘符路径: " + fsgetDirName());

Systemoutprintln("盘符标志: " + fsgetFlags());//

// 文件系统类型,比如 FAT32、NTFS

Systemoutprintln("盘符类型: " + fsgetSysTypeName());

// 文件系统类型名,比如本地硬盘、光驱、网络文件系统等

Systemoutprintln("盘符类型名: " + fsgetTypeName());

// 文件系统类型

Systemoutprintln("盘符文件系统类型: " + fsgetType());

switch (fsgetType()) {

case 0: // TYPE_UNKNOWN :未知

break;

case 1: // TYPE_NONE

break;

case 2: // TYPE_LOCAL_DISK : 本地硬盘

// 文件系统总大小

FileSystemUsage usage = null;

usage = sigargetFileSystemUsage(fsgetDirName());

Systemoutprintln(fsgetDevName() + "总大小: " + usagegetTotal() + "KB");

// 文件系统剩余大小

Systemoutprintln(fsgetDevName() + "剩余大小: " + usagegetFree() + "KB");

// 文件系统可用大小

Systemoutprintln(fsgetDevName() + "可用大小: " + usagegetAvail() + "KB");

// 文件系统已经使用量

Systemoutprintln(fsgetDevName() + "已经使用量: " + usagegetUsed() + "KB");

double usePercent = usagegetUsePercent() 100D;

// 文件系统资源的利用率

Systemoutprintln(fsgetDevName() + "资源的利用率: " + usePercent + "%");

break;

case 3:// TYPE_NETWORK :网络

break;

case 4:// TYPE_RAM_DISK :闪存

break;

case 5:// TYPE_CDROM :光驱

break;

case 6:// TYPE_SWAP :页面交换

break;

}

}

return;

}

不曾在阿富汗灭亡这一说法,只能说阿富汗发生了政权更迭,执政党派和***物改变,国家名字变了而已

拜登总统宣布,他将结束美国军队在阿富汗的公开参与。这些行动始于2001年底,当时基地组织袭击了纽约的双子塔。20年来,美国及其北约盟国一直试图带来稳定与和平。这一努力失败了,现在所有这些部队都将回家。

现在主要反对派来自塔利班,这是一个主要由普什图人组成的组织,最初由巴基斯坦情报机构组织,目的是在俄罗斯军队被驱逐后控制阿富汗。最终,塔利班控制了该国75%的领土,并在喀布尔建立了政府。

20年来,塔利班一直在反击阿富汗政府、美国及其北约盟友。随着美国和北约的撤离,塔利班赢得了胜利。

阿富汗现状

阿富汗为什么战火不断?

不毛之地,这个词可以精准地形容阿富汗,山区占国土面积的五分之四,剩下的还有大片的荒漠,这里既没有肥沃的土地,也没有丰富的资源,还是世界上最为贫穷落后的地区,但是却始终是国际上的热点,战争连绵不断。

阿富汗的地图示意图

本•拉登事件

20年前美国发生911恐怖袭击事件后,美国迅速查找真凶,发现藏匿在阿富汗的本•拉登是幕后主使,策划实施了这次震惊全球的恐怖袭击事件,美国要求当时的阿富汗执政当局交出本•拉登,当时的阿富汗是塔利班执政,最高***奥马尔果断拒绝了美国提出的要求。

之后的事情大家也都清楚了,2001年12月9日,塔利班大本营坎大哈被美军攻陷,宣告阿富汗塔利班政权正式终结。

美国驻军阿富汗扶持反塔利班组织组成听命于美国的新政府,成立阿富汗伊斯兰共和国,走世俗化道路,跟着美国狂奔。美军在,这个政府就在,美军一撤走,这政府立马倒台。

20年过去了,塔利班卧薪尝胆,不断壮大自己的作战部队,美军一撤走,迅速攻城略地,冲出大山,占领农村包围城市,入住喀布尔后宣布建立阿富汗伊斯兰酋长国。

阿富汗并没有灭亡,美国扶持建立的是阿富汗伊斯兰共和国,塔利班打回来重掌政权建立的是阿富汗伊斯兰酋长国,人还是那些人,山川依旧,只是国名改变了而已。

阿富汗的改朝换代几乎已成定局,剩下的问题只是各国是否承认这个政权的合法性。

第一副总统萨勒赫

不过被神学士推翻的阿富汗伊斯兰共和国总统虽然流亡海外,但第一副总统萨勒赫(Amrullah Saleh)却在阿国北部的潘杰希尔(字面含义为“五狮”)山谷(Panjshir Valley)坚持抵抗,17日更依据《阿富汗宪法》第60条与67条宣布接任代理总统,强调“阿富汗不是越南”、“我们没有失去意志“,呼吁所有人加入抵抗行列。

阿富汗人面临着持续的战斗、经济下滑和对妇女的压迫。数千万阿富汗人民生活在战乱与恐惧之中,和平,在这片土地的和平依然遥遥无期

linux如何查看系统的硬件配置如何在linux系统下查看系统配置?在图形模式下我们可以很方便的利用Linux的图形工具,点击几下就可以查看到Linux系统的的硬件信息。但是大部分生产服务器系统为了节约系统资源是没有安装Xwindo服务的。所以我们在图形模式下掌握查看系统硬件信息的方式是很如何在linux系统下查看系统配置?在图形模式下我们可以很方便的利用Linux的图形工具,点击几下就可以查看到Linux系统的的硬件信息。但是大部分生产服务器系统为了节约系统资源是没有安装Xwindo服务的。所以我们在图形模式下掌握查看系统硬件信息的方式是很必要的。linux下至今没有给出机器系统信息的命令或者是软件(类似CPU—Z,everest等)。要想查看系统的配置具体的方法是:1、系统硬件配置都在/proc目录里面2、可以用命令查看里面的文件即可比如:cat/proc/cpuinfo查看cpu信息,processor0为一个U,1为两个,flags超线程。lspci查看主板信息free–m查内存(total属性下显示的是内存的大小)。fidsk-l查硬盘空间df-h查硬盘du-sh查看文件夹大小top这个比较全,内存进程负载都有了。uptime查运行时间负载情况等等的信息linux系统主要是用来编程开发用的系统,需要用到命令指令查询机器配置,系统里所有动作都是靠命令指令查询的。所以建议你如果真心弄不来还是装个WIN7系统吧

1、确定当前系统安装的jdk是16版本以上

2、windows系统中有获取cpu使用率的可执行文件exe,只要在java中获取该文件的执行路径,通过Java调用即可。

3、获取 *** 作系统可执行文件目录procCmd

4、调用java的RuntimegetRuntime()exec执行cmd应用程序

5、利用java中sleep来计算睡眠前后cpu的忙碌时间与空闲时间,因为sleep不会释放系统资源

6、根据忙碌时间占总时间的比例来计算cpu使用率

示例:

private double getCpuRatioForWindows() {  

        try {  

            String procCmd = Systemgetenv("windir")  

                    + "//system32//wbem//wmicexe process get Caption,CommandLine,"  

                    + "KernelModeTime,ReadOperationCount,ThreadCount,UserModeTime,WriteOperationCount";  

            // 取进程信息  

            long[] c0 = readCpu(RuntimegetRuntime()exec(procCmd));  

            Threadsleep(CPUTIME);  

            long[] c1 = readCpu(RuntimegetRuntime()exec(procCmd));  

            if (c0 != null && c1 != null) {  

                long idletime = c1[0] - c0[0];  

                long busytime = c1[1] - c0[1];  

                return DoublevalueOf(  

                        PERCENT  (busytime) / (busytime + idletime))  

                        doubleValue();  

            } else {  

                return 00;  

            }  

        } catch (Exception ex) {  

            exprintStackTrace();  

            return 00;  

        }  

    }

1首先需要将你的类extends SigarCommandBase

2在必须要实现的方法public void output(String[] args) throws SigarException {}里面,加上你的这段代码

3修改你的代码(如下),并加到output方法里

long[] pids = thisshellfindPids(args);

for (int i = 0; i < pidslength; i++) {

ProcCpu procCpu = sigargetProcCpu(StringvalueOf(pids[i]));

Systemoutprintln("CPU占用率percent" + procCpugetPercent()

+ " CPU总量Totala" + procCpugetTotal());

}

4再次运行,没有权限问题了。

以上就是关于Java中如何获得某个磁盘(根目录)比如C盘全部的内容,包括:Java中如何获得某个磁盘(根目录)比如C盘、阿富汗灭亡了吗、如何配置sigar在Linux和Windows下使用java语言获得各种系统信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9300345.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存