求一个用来获取windows磁盘读写速率的java代码

求一个用来获取windows磁盘读写速率的java代码,第1张

import javaioFile;

/

jdk60下的磁盘使用情况例子

/

public class Diskfree {

public static void main(String[] args) {

File[] roots = FilelistRoots();//获取磁盘分区列表

for (File file : roots) {

Systemoutprintln(filegetPath()+"信息如下:");

Systemoutprintln("空闲未使用 = " + filegetFreeSpace()/1024/1024/1024+"G");//空闲空间

Systemoutprintln("已经使用 = " + filegetUsableSpace()/1024/1024/1024+"G");//可用空间

Systemoutprintln("总容量 = " + filegetTotalSpace()/1024/1024/1024+"G");//总空间

Systemoutprintln();

}

}

}

File f = new File("e:\")

if(fexists()){

return fgetName(); }

else{

return null;

}

最原始的方法可以遍历所有盘符文件

public class Path

{

private final List<File> list=new ArrayList<File>();

private String directory;

public Path(String s)

{

thisdirectory=s;

}

private void genPath()

{

File[] roots=FilelistRoots();

for(File root:roots)

searchExists(root);

}

private void searchExists(File file)

{

String tempPath=filegetAbsolutePath();

if(tempPathcontains(directory)

&&(tempPathsubstring(tempPathlastIndexOf(directory))equals(directory)))

listadd(file);

if(fileisDirectory()&&filelist()!=null)

{

File[] files=filelistFiles();

for(File f:files)

{

searchExists(f);

}

}

}

public void listPath()

{

genPath();

for(File file:list)

Systemoutprintln(filegetAbsolutePath());

}

public static void main(String[] args) throws UnsupportedEncodingException

{

Path p=new Path("CS16");

plistPath();

}

}

测试正确,但性能太差,考虑用好的文件查找算法和多线程来作

list()方法可能返回null,如果你某个目录中为空,没有子目录,没有其他文件,就返回空,则会出现nullPointerException,

而这些出现异常时的文件,都是系统中不存在的(不是隐藏的文件,也不是系统保护的文件。)

个人认为,这些文件是跟回收站有关的,往往这种文件都是禁止外界访问的,导致File指向null对象,就抛出空指针异常。所以加个if判断是否为null比如

public void showSubFile(File f)

{

File[] fs = flistFiles();

if(fs != null) //看这里,看这里,看这里

for(int i=0;i<fslength;i++)

{

File temp = fs[i];

if(tempisFile())

{

Systemoutprintln(tempgetName());

}

else

{

showSubFile(temp);

}

}

}

这样不会出现问题

以上就是关于求一个用来获取windows磁盘读写速率的java代码全部的内容,包括:求一个用来获取windows磁盘读写速率的java代码、用JAVA怎么判断某个盘符是否存在、如何用java代码得到文件夹的路径(即一个方法,输入文件夹名称,返回路径)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/web/9342665.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存