Die Codekopie lautet wie folgt:
Paket org.load.u;
Import Java.io.file;
import Java.util.linkedhashMap;
import Java.util.map;
// USB -Antriebserkennung
öffentliche Klassenkontrolle {
// Status der Speicherplatte
private statische Karte <String, boolean> map = new LinkedHasMap <String, boolean> ();
// Festplatte definieren
private statische endgültige String [] arr = new String [] {"C", "D", "E", "F", "G", "H", "I", "J"};
public static void main (String [] args) {
init ();
überprüfen();
System.out.println ("u diskonted");
System.out.println (MAP);
}
// tödliche Schleife, um den Status jeder Festplatte zu erkennen
public static void check () {
Dateidatei;
für(;;) {
für (string str: arr) {
Datei = neue Datei (str + ": //");
// Wenn die Festplatte jetzt existiert und vorher nicht existiert
// es bedeutet, dass das USB -Laufwerk gerade angeschlossen wurde und zurückkehrt
if (file.exists () &&! map.get (str)) {
zurückkehren;
}
// Jedes Mal, wenn sich der Staat ändert, muss der gespeicherte Staat aktualisiert werden
// Wenn sich der gerade erkannte Status vom ursprünglichen Zustand unterscheidet, wird der Status aktualisiert
// Sie müssen die oben genannten wenn
if (file.exists ()! = map.get (str)) {
map.put (str, file.exists ());
}
}
versuchen {
Thread.sleep (5 * 1000);
} catch (InterruptedException e) {
E. printstacktrace ();
}
}
}
// Initialisieren Sie den Datenträgerstatus, wahr, ansonsten falsch
public static void init () {
Dateidatei;
für (string str: arr) {
Datei = neue Datei (str + ": //");
map.put (str, file.exists ());
}
}
}