1、最近在做一个java与usb通信的项目,在我原来的理解中,java是不能读取电脑底层设备信息的,所有就让人用C写一个中间程序来传递数据。但是最近在查询资料的时候,看到usb4java是写好的jar包,可以用java读取硬件设备,虽然最终不知道是什么原因一直无法读取我公司的硬件设备,但是可以查看到鼠标、键盘、手机是否连接usb。做一个参考吧。
2、首先需要查看usb连接的idVendor和idProduct;java需要根据这个来判断是哪个usb
(1)我的电脑右键--管理--设备管理器
(2)点击要查看的设备,点击详细信息,选择硬件ID;下图的idVendor=12D1;idProduct=1082的16进制数
3、代码:
(1)引入的包:
<dependency>
<groupId>org.usb4java</groupId>
<artifactId>usb4java-javax</artifactId>
<version>1.2.0</version>
</dependency>
(2)需要在resource下加入允许使用jar包的文件javax.usb.properties;里面的内容为:javax.usb.services = org.usb4java.javax.Services
(3)class代码如下:
package com.jda.iwpss.test;
import java.util.List;
import javax.usb.UsbConfig