文档章节

U盘发现器

凯哥学堂
 凯哥学堂
发布于 2017/07/15 21:41
字数 313
阅读 5
收藏 0
点赞 0
评论 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();
	}

}

© 著作权归作者所有

共有 人打赏支持
凯哥学堂
粉丝 10
博文 287
码字总数 257252
作品 0
东城
程序员
BUYIOS-mac-style更新版

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

舒乐 ⋅ 2011/04/18 ⋅ 0

UNR有没有用的,发个安装文档

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

老枪 ⋅ 2009/06/01 ⋅ 0

修改dell poweredge 1950 win server 2003 的密码

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

wzk ⋅ 2013/01/27 ⋅ 0

Linux Deepin 系统更新汇总

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

火耳 ⋅ 2013/09/05 ⋅ 22

如何制作一个u盘启动工具

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

鈕蓁毓 ⋅ 2017/12/30 ⋅ 0

分享一款个人的U盘装系统软件

教您怎么用U盘装系统 U盘装系统方法那么多,制作工具也是多种多样,该怎么选择呢?我们经过长期学习研究,为您准备了一篇用U盘装系统的简单实用教程,您只用花10分钟时间看完,便可以在任何一...

xwbzcn ⋅ 2012/06/08 ⋅ 1

android host usb hid

@lucasli 你好,想跟你请教个问题: 首先感谢你在百忙之中查看我的给你发的消息。 我看了你在论坛的贴,发现你对android host usb 研究的比较透彻。 所以,我想问你个问题, 设备:4.0系统的...

小_叶 ⋅ 2012/09/24 ⋅ 5

遭遇木马Trojan-PWS.Win32.Agent.BU(续篇)

一直以为那个木马Trojan-PWS.Win32.Agent.BU是同事的U盘上带过来的,直到后来在安装/卸载一个软件时无意中发现不是的(呵呵~真不好意思,错怪她了),事情还是从公司领导决定用禁U软件说起,...

wbf961127 ⋅ 2017/11/12 ⋅ 0

Ubuntu: VirtualBox启用Usb设备(主机Windows + VirtualBox(Ubuntu))

记录一下,别以后忘了,有些事情知道很简单,忘记很麻烦 本文适用于主机Windows + VirtualBox(Ubuntu) 系统,想看的是相反系统的同学请绕道~ VirtualBox正确安装的话,打开虚拟机 设置/USB设...

长平狐 ⋅ 2012/06/20 ⋅ 0

SYS_U盘安装ubuntu步骤,及问题解决方法

问题02: 打开命令行 解决02: 按下组合键"Ctrl+Alt+T"即可打开命令行终端窗口; 问题01: U盘安装ubuntu,一直提示start booting from usb device…,使用软碟通制作的U盘启动器,无法引导进ubu...

喵王不瞌睡 ⋅ 2015/01/21 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

PHP语言系统ZBLOG或许无法重现月光博客的闪耀历史[图]

最近在写博客,希望通过自己努力打造一个优秀的教育类主题博客,名动江湖,但是问题来了,现在写博客还有前途吗?面对强大的自媒体站点围剿,还有信心和可能型吗? 至于程序部分,我选择了P...

原创小博客 ⋅ 23分钟前 ⋅ 0

IntelliJ IDEA 2018.1新特性

工欲善其事必先利其器,如果有一款IDE可以让你更高效地专注于开发以及源码阅读,为什么不试一试? 本文转载自:netty技术内幕 3月27日,jetbrains正式发布期待已久的IntelliJ IDEA 2018.1,再...

Romane ⋅ 48分钟前 ⋅ 0

浅谈设计模式之工厂模式

工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻...

佛系程序猿灬 ⋅ 今天 ⋅ 0

Dockerfile基础命令总结

FROM 指定使用的基础base image FROM scratch # 制作base image ,不使用任何基础imageFROM centos # 使用base imageFROM ubuntu:14.04 尽量使用官方的base image,为了安全 LABEL 描述作...

ExtreU ⋅ 昨天 ⋅ 0

存储,对比私有云和公有云的不同

导读 说起公共存储,很难不与后网络公司时代的选择性外包联系起来,但尽管如此,它还是具备着简单和固有的可用性。公共存储的名字听起来也缺乏专有性,很像是把东西直接堆放在那里而不会得到...

问题终结者 ⋅ 昨天 ⋅ 0

C++难点解析之const修饰符

C++难点解析之const修饰符 c++ 相比于其他编程语言,可能是最为难掌握,概念最为复杂的。结合自己平时的C++使用经验,这里将会列举出一些常见的难点并给出相应的解释。 const修饰符 const在c...

jackie8tao ⋅ 昨天 ⋅ 0

聊聊spring cloud netflix的HystrixCommands

序 本文主要研究一下spring cloud netflix的HystrixCommands。 maven <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-clo......

go4it ⋅ 昨天 ⋅ 0

Confluence 6 从其他备份中恢复数据

一般来说,Confluence 数据库可以从 Administration Console 或者 Confluence Setup Wizard 中进行恢复。 如果你在恢复压缩的 XML 备份的时候遇到了问题,你还是可以对整个站点进行恢复的,如...

honeymose ⋅ 昨天 ⋅ 0

myeclipse10 快速搭建spring boot开发环境(入门)

1.创建一个maven的web项目 注意上面标红的部分记得选上 2.创建的maven目录结构,有缺失的目录可以自己建立目录补充 补充后 这时候一个maven的web项目创建完成 3.配置pom.xml配置文件 <proje...

小海bug ⋅ 昨天 ⋅ 0

nginx.conf

=========================================================================== nginx.conf =========================================================================== user nobody; #......

A__17 ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部