java完成監聽u盤示例分享。本站提示廣大學習愛好者:(java完成監聽u盤示例分享)文章只能為提供參考,不一定能成為您想要的結果。以下是java完成監聽u盤示例分享正文
package org.load.u;
import java.io.File;
import java.util.LinkedHashMap;
import java.util.Map;
// U盤檢測
public class CheckU {
// 寄存磁盤狀況
private static Map<String, Boolean> map = new LinkedHashMap<String, Boolean>();
// 界說磁盤
private static final String[] arr = new String[] {"C", "D", "E", "F", "G", "H", "I", "J"};
public static void main(String[] args){
init();
check();
System.out.println("檢測到U盤");
System.out.println(map);
}
// 逝世輪回檢測每一個磁盤狀況
public static void check() {
File file ;
for(;;) {
for(String str : arr) {
file = new File(str + ":\\");
// 假如磁盤如今存在,而且之前不存在
// 則表現剛插上U盤,前往
if(file.exists() && !map.get(str)) {
return;
}
// 須要每次狀況轉變時,更新保留的狀況
// 假如剛檢測的狀況和本來的狀況紛歧樣,則從新更新狀況
// 必需放下面的if語句上面
if(file.exists() != map.get(str)) {
map.put(str, file.exists());
}
}
try {
Thread.sleep(5 * 1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
// 初始化磁盤狀況,存在true, 不然false
public static void init() {
File file ;
for(String str : arr) {
file = new File(str + ":\\");
map.put(str, file.exists());
}
}
}