文档章节

U盘发现器

凯哥学堂
 凯哥学堂
发布于 2017/07/15 21:41
字数 313
阅读 5
收藏 0

U盘发现器

package com.lx.io;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;

public class USBreadFile {
/**
     * 更多资料欢迎浏览凯哥学堂官网:http://kaige123.com 

    * @author 小沫
    */
	public static void USB() {

		File[] files = File.listRoots();//列出当前所有盘符
		//准备好集合,把所有盘符数据添加进去
		ArrayList<File> f1 = new ArrayList<>();
		ArrayList<File> f2 = new ArrayList<>();

		long sum;// 盘符总大小
		long surplus;// 盘符剩余大小
		long use;// 盘符已使用大小

		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;//更新盘符
			} else if (newfiles.length < files.length) {//如果新的盘符小于了原来的盘符
				//说明U盘已经拔出
				System.out.println("U盘已拔出");
				files = newfiles;
			}
		}
	}

	public static void main(String[] args) {

		USB();
	}

}

© 著作权归作者所有

共有 人打赏支持
上一篇: TCP传输协议使用
下一篇: Java基础
凯哥学堂
粉丝 17
博文 316
码字总数 284948
作品 0
东城
程序员
私信 提问
BUYIOS-mac-style更新版

上次因为只出了一个普通版本的,后来很多网友反应更喜欢增强版一些,所以此次系统是针对上次的的MAC-style版出的更新版,但我觉得并不单单只是一个更新版,而且也是一个强化版,个人都觉得这...

舒乐
2011/04/18
0
0
如何制作一个u盘启动工具

1、先插入一个自己的u盘,将u盘里的自己重要的东西备份一下,然后清空u盘。2、打开浏览器,进入百度,搜索“老毛桃u盘启动工具”或“大白菜u盘启动工具”,打开具有官方认证的网址,注意形近...

鈕蓁毓
2017/12/30
0
0
UNR有没有用的,发个安装文档

UNR(Ubuntu Netbook Remix)是我09年的学习课题之一,它是Ubuntu针对Netbook市场定制的发行版本,下面这张图是UNR的典型界面。这次我翻译了一下UNR镜像的安装方法,原文链接为:https://wiki....

老枪
2009/06/01
557
0
修改dell poweredge 1950 win server 2003 的密码

公司的一台dell poweredge 1950服务器,经理说密码忘记了,因为当初我信誓旦旦地说改这个密码很简单,于是交给我了,一接手才知道没那么简单,机架式,相当薄,但很重,没看到光驱,电 源键,重启键.开...

wzk
2013/01/27
0
0
Linux Deepin 系统更新汇总

Linux Deepin系统组近期进行了系统更新推送,下面是本次系统更新解决的部分问题,仅供参考: 深度系统设置 #2181:修复“默认程序-开机启动”中开机启动项更新不及时的问题 #2215: 修复键盘模...

火耳
2013/09/05
4.4K
22

没有更多内容

加载失败,请刷新页面

加载更多

docker部署springboot项目

安装docker 菜鸟教程 springboot项目 maven依赖 <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001......

yimingkeji
今天
10
0
ios多个target

1.建立3个target,分别为heroone,heroone test,heroone dev;分别为正式环境,test环境,dev环境 2.注意取消掉autocreate以防止名字不对,分别以Duplicate的方式建立另外两个scheme 3.创建...

HeroHY
今天
5
0
php获取客户端IP

php获取客户端IP 首先先阅读关于IP真实性安全的文章:如何正確的取得使用者 IP? 「任何從客戶端取得的資料都是不可信任的!」 HTTP_CLIENT_IP头是有的,但未成标准,不一定服务器都实现。 ...

DrChenXX
昨天
0
0
. The valid characters are defined in RFC 7230 and RFC 问题

通过这里的回答,我们可以知道: Tomcat在 7.0.73, 8.0.39, 8.5.7 版本后,添加了对于http头的验证。 具体来说,就是添加了些规则去限制HTTP头的规范性 参考这里 具体来说: org.apache.tom...

west_coast
昨天
1
0
刷leetcode第704题-二分查找

今天双十一买的算法书到货了,路上刷到有人说的这个题,借(chao)鉴(xi)一下别人的思路,这个是C++标准库里面的经典方法,思路精巧,优雅好品味 int search(int* nums, int numsSize, in...

锟斤拷烫烫烫
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部