1

如何在java中检索USB闪存驱动器的制造商序列号?

我看看这个

如何获取 USB 闪存驱动器的制造商序列号?

但这对我没有帮助。

4

2 回答 2

2

我认为没有适用于多个平台的纯 Java 解决方案。

您可能需要求助于“抓取”外部命令的输出。(或者弄清楚他们在做什么,并将其复制到本机代码库中......)

在 Linux 上:

  • “lsusb”命令的输出包括序列号。(检查手动输入。)

在 Windows 上:


@FoggyDay 找到了几个据称支持此功能的 3rd-party 库:

  • jUSB显然只适用于 GNU/Linux。

  • usb4java支持更广泛的平台。

  • 两者都依赖于平台特定的本机库。


我认为建议使用的评论Files.getFileStore(path).getAttribute("volume:vsn")是不正确的。Java 源代码意味着返回的是由 Windows 分配的卷序列号,而不是制造商提供的序列号。相关代码在这里

于 2014-08-17T03:28:27.740 回答
0

jUSB库允许您从usb.core.Configuration读取

usb4java - 另一个更新的 Java 库 - 可能也支持相同的。

于 2014-08-17T03:51:26.637 回答