Mam listę wszystkich dostępnych dysków na moim pulpicie przy użyciu File.listRoots() w Javie. Mam kilka mapowanych dysków. Kiedy wyświetlam listę katalogów głównych, pobierają mnie zarówno dyski lokalne, jak i zmapowane dyski. W celu wykluczenia odwzorowanych napędów Kiedyś po fragmencie kodu:Identyfikowanie dysku mapowanego z dysku lokalnego
for (File drive :File.listRoots()){
String typeDescription = FileSystemView.getFileSystemView().getSystemTypeDescription(drive);
}
Na podstawie opisu typu powrócił jestem filtrowanie napęd. Ale nie jest to powszechnie standard i nie do zaakceptowania przez inny system operacyjny. Obsługiwany tylko dla okien. Istnieje również ograniczenie języka (w języku angielskim obsługiwane jest tylko opis typu). Czy ktoś może mi dać inne rozwiązanie do filtrowania zmapowanych dysków na całym świecie.
Uwaga:
To musi być specyficzny dla JDK1.6
Każde inne rozwiązanie będzie zależało od platformy. Ale ponieważ _Wszystkie dostępne dyski_ są wyłącznie terminem Windows, który prawdopodobnie szukasz rozwiązania tylko dla systemu Windows? –
@Oleg Mikheev. Tak ... Szukam tylko rozwiązania w oknach. Ale w maszynie linuksowej File.listRoots() zwraca tylko katalog główny. Więc nie ma problemu w Linuksie. Potrzebuję rozróżnić między zmapowanym dyskiem i dyskiem lokalnym w platformie Windows ... –
Usunięto moją odpowiedź. Po prostu wypróbowałem to na OS X i widzę problem, który masz. Napiszę inną odpowiedź, jeśli coś wymyślę. – Dave