当前位置: 首页 > 面试题库 >

如何在Java中访问USB端口

阳凌
2023-03-14
问题内容

我正在尝试编写一个访问USB端口以读取和写入通过USB连接的设备的Java应用程序。我面临的问题是,我不知道在Java中究竟要使用什么来做这样的事情。我在网上搜索,发现有一个叫的东西,JUSB但所有帖子看起来都相当老。

目前,我正在使用这些RXTX库,但有时会遇到一些同步错误。当我使用C#进行等效操作时,它需要的代码要少得多,而且我不会遇到任何相同的同步错误。

我的问题是, JRE的最新版本中是否包含任何可用于访问USB端口的内容这与等效的C#代码一样容易 )?


问题答案:

没有什么比Java中C#对USB的支持更高。jUSB和Java-USB都已严重过时,可能无法用于任何重要的应用程序开发。

如果要实现跨平台USB应用程序,那么最好的选择是编写一个抽象的JNI接口,该接口与您必须自己编写的Linux,Mac和Windows本机库进行通信。我会看一下LibUSB来处理Mac和Linux。如您所见,Windows非常简单。我刚完成了一个为期一年的项目,就这样做了,不幸的是,这是唯一的严肃的跨平台解决方案。如果您不必在Windows上实现,并且需求受到限制,则可以使用较旧的Java库之一(jUSB或Java-
USB)。任何需要在Win32 / Win64上部署的东西都将需要一个本机组件



 类似资料:
  • 问题内容: 我想知道如何检测USB驱动器。但是我想知道我们是否可以用来检查USB驱动器。我读过的帖子确实解释了如何使用,但我不太了解。如果有人可以提供示例,那就太好了。谢谢。 问题答案: 您可以使用File.listRoots()方法。 这里的问题是,您将需要一个名称或其他信息来将驱动器标识为USB驱动器。否则,您无法使用这种方法告诉普通驱动器和USB驱动器。

  • 问题内容: 我有一个Java的HashMap,其内容(大家可能都知道)可以由 如果在另一个HashMap中有一个HashMap,即嵌套的HashMap,我将如何访问内容?我可以这样做吗,内联: 谢谢。 问题答案: 您可以像假设的那样进行操作。但是您的HashMap必须模板化: 否则,从第一张地图检索第二张地图后,您必须进行强制转换。

  • 问题内容: 因此,我将这根小电缆插入您的手机,该手机的另一侧具有USB端口,例如,您可以在其中插入闪存驱动器 当我插入闪存驱动器时,我收到一条通知,内容为: 已连接USB大容量存储 然后,当我启动文件浏览器应用程序时,我可以看到驱动器 位于: / storage / UsbDriveA / 太好了,但是我想知道如何在 代码中访问闪存驱动器。轻松访问SD卡: 但是,对于闪存驱动器,您将如何做呢?提前

  • 所以我有一个小电缆,你可以插入你的手机,在另一边有一个USB端口,你可以在那里插入闪存驱动器,比如,你可以在这里看到: 当我插入闪存驱动器时,我得到一个通知,上面写着: 已连接USB大容量存储器

  • 问题内容: 我创建了一个小型Java servlet,其目的很简单:调用它后,它将执行以下步骤: 从本地文件系统读取文件foo.json 处理文件中的数据并对其进行一些更改 将更改写回文件 代码的简化版: 现在,我面临一个问题,即可能有两个或多个对servlet的http请求几乎同时调用servlet。为了避免对同一文件进行多次并行写访问,我需要以某种方式进行同步。根据我对servlet生命周期过