U盘发现器

U盘发现器

packagecom.lx.io;importjava.io.File;importjava.io.IOException;importjava.util.ArrayList;importjava.util.Arrays;publicclassUSBreadFile{/**    * 更多资料欢迎浏览凯哥学堂官网:http://kaige123.com    *@author小沫    */publicstaticvoidUSB(){File[] files = File.listRoots();//列出当前所有盘符//准备好集合,把所有盘符数据添加进去ArrayList f1 =newArrayList<>();ArrayList f2 =newArrayList<>();longsum;// 盘符总大小longsurplus;// 盘符剩余大小longuse;// 盘符已使用大小while(true) {File[] newfiles = File.listRoots();//获得到新盘符if(newfiles.length > files.length) {//如果新的盘符大于原来盘符//用Arrays工具把数组转换成集合在添加进集合f1.addAll(Arrays.asList(files));f2.addAll(Arrays.asList(newfiles));f2.removeAll(f1);//在f2和f1里面找到相同的数据进行删除掉for(File file : f2) {try{char[] c = file.getPath().toCharArray();//把路径拆分成字符System.out.print("插入:"+ c[0] +" 盘");sum = file.getTotalSpace() /1024/1024/1024;surplus = file.getUsableSpace() /1024/1024/1024;use = sum - surplus;//列出每个盘符的信息System.out.println(c[0] +"盘总大小:"+ sum +"G"+" 剩余:"+ surplus +"G"+" 已用:"+ use +"G");//用Runtime方法打开插入进去的U盘Runtime.getRuntime().exec("cmd /c start "+ file.getPath());}catch(IOException e) {e.printStackTrace();}}files = newfiles;//更新盘符}elseif(newfiles.length < files.length) {//如果新的盘符小于了原来的盘符//说明U盘已经拔出System.out.println("U盘已拔出");files = newfiles;}}}publicstaticvoidmain(String[] args){USB();}}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容