Detecting/Verifying SD 卡驱动器
Detecting/Verifying SD Card Drive
有没有办法检测连接到台式计算机的所有 SD 卡驱动器?在 Windows 中,SD 卡在视觉上与其他设备(如内置硬盘驱动器或类似设备)截然不同。有没有办法判断驱动器是否为 SD 卡驱动器?
A Java 列出所有可用文件系统根目录的方法是使用 listRoots()
方法,但它不能告诉文件系统类型,例如外部、内部、OS 驱动器或其他.
纯 Java 这甚至可能吗?
注:
我 不是 要求检测 Android phone SD 卡,因为这些是搜索我的问题时的结果。
This回答解决了。
示例代码:
USBDeviceDetectorManager manager = new USBDeviceDetectorManager();
List<USBStorageDevice> usbStorageDevices = manager.getRemovableDevices();
for(USBStorageDevice usbStorageDevice : usbStorageDevices)
{
System.out.println(usbStorageDevice.getSystemDisplayName());
System.out.println(usbStorageDevice.getDeviceName());
System.out.println(usbStorageDevice.getRootDirectory());
}
我已连接 SD card
、NAS
、C:
和 D:
驱动器。打印如下:
SANDISK (E:)
SANDISK
E:\
正如预期的那样,只返回一个结果,因为 SD card
被视为 USB
由于 USB reader
被插入我的笔记本电脑。
有没有办法检测连接到台式计算机的所有 SD 卡驱动器?在 Windows 中,SD 卡在视觉上与其他设备(如内置硬盘驱动器或类似设备)截然不同。有没有办法判断驱动器是否为 SD 卡驱动器?
A Java 列出所有可用文件系统根目录的方法是使用 listRoots()
方法,但它不能告诉文件系统类型,例如外部、内部、OS 驱动器或其他.
纯 Java 这甚至可能吗?
注:
我 不是 要求检测 Android phone SD 卡,因为这些是搜索我的问题时的结果。
This回答解决了。
示例代码:
USBDeviceDetectorManager manager = new USBDeviceDetectorManager();
List<USBStorageDevice> usbStorageDevices = manager.getRemovableDevices();
for(USBStorageDevice usbStorageDevice : usbStorageDevices)
{
System.out.println(usbStorageDevice.getSystemDisplayName());
System.out.println(usbStorageDevice.getDeviceName());
System.out.println(usbStorageDevice.getRootDirectory());
}
我已连接 SD card
、NAS
、C:
和 D:
驱动器。打印如下:
SANDISK (E:)
SANDISK
E:\
正如预期的那样,只返回一个结果,因为 SD card
被视为 USB
由于 USB reader
被插入我的笔记本电脑。