FDドライブの判断

FileがFDドライブかどうかを判定する方法。
Javadocを眺めてたら、FileSystemViewというのを発見したので、使ってみた。


サンプルコード。


File[] files = File.listRoots();
FileSystemView fSysView = FileSystemView.getFileSystemView();
for (File file : files) {
if (fSysView.isFloppyDrive(file)) {
System.out.println("yes: " + file);
} else {
System.out.println("no: " + file);
}
}
結果。

yes: A:\
no: C:\
no: D:\
no: E:\

A:\がFDDなんだが、見事に判定されてる。
でもisCDDriveなんてメソッドはないんで、CDドライブは判定できない・・・っぽい。
FileSystemView#getSystemTypeDescriptionで判断するの?
わからん。


というわけで、おまけ。


File[] files = File.listRoots();
FileSystemView fSysView = FileSystemView.getFileSystemView();
for (File file : files) {
System.out.println(file + ": " + fSysView.getSystemTypeDescription(file));
}
A:\: 3.5 インチ フロッピー ディスク
C:\: ローカル ディスク
D:\: ローカル ディスク
E:\: CD ドライブ