使用javaxusb包从USB条形码扫描仪读取数据

使用javaxusb包从USB条形码扫描仪读取数据,java,usb,barcode-scanner,usb4java,Java,Usb,Barcode Scanner,Usb4java,我正在尝试使用Javax包和java中的USB util从USB手持条形码扫描仪读取数据。我能够检测到设备,并且能够读取条形码 但是,结果是一个字节数组,其格式如下。它在第3字节数组位置显示的数字比原始要求的数字少一个。我还为回车加了后缀。它返回40个回车位,而不是13个回车位(根据ASCII标准) 我用的是霍尼韦尔手持扫描仪氙气1900 请告诉我问题是什么? 例如,所需的输出为20131503000140300 和 收到的输出为 [0, 0, 31, 0, 0, 0, 0, 0] [0, 0,

我正在尝试使用Javax包和java中的USB util从USB手持条形码扫描仪读取数据。我能够检测到设备,并且能够读取条形码

但是,结果是一个字节数组,其格式如下。它在第3字节数组位置显示的数字比原始要求的数字少一个。我还为回车加了后缀。它返回40个回车位,而不是13个回车位(根据ASCII标准)

我用的是霍尼韦尔手持扫描仪氙气1900

请告诉我问题是什么?
例如,所需的输出为20131503000140300 和 收到的输出为

[0, 0, 31, 0, 0, 0, 0, 0]
[0, 0, 39, 0, 0, 0, 0, 0]
[0, 0, 30, 0, 0, 0, 0, 0]
[0, 0, 32, 0, 0, 0, 0, 0]
[0, 0, 30, 0, 0, 0, 0, 0]
[0, 0, 34, 0, 0, 0, 0, 0]
[0, 0, 39, 0, 0, 0, 0, 0]
[0, 0, 32, 0, 0, 0, 0, 0]
[0, 0, 39, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 39, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 39, 0, 0, 0, 0, 0]
[0, 0, 30, 0, 0, 0, 0, 0]
[0, 0, 33, 0, 0, 0, 0, 0]
[0, 0, 39, 0, 0, 0, 0, 0]
[0, 0, 32, 0, 0, 0, 0, 0]
[0, 0, 39, 0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 0, 0, 0]
[0, 0, 39, 0, 0, 0, 0, 0]
[0, 0, 40, 0, 0, 0, 0, 0]
扫描

使用的示例代码

 while (running) {

     try {
              length = usbPipe.syncSubmit(buffer);
         } catch (UsbException uE) { }

         for (int i = 0; i < length; i++) {
              long scannedDigit = UsbUtil.unsignedLong(buffer[i]);
               System.out.print(".long." + scannedDigit);

            }
}
运行时{
试一试{
长度=usbPipe.syncSubmit(缓冲区);
}捕获(USBEException uE){}
for(int i=0;i
那么,什么是正确的二进制输出,以便我们可以看到差异?您指定的代码与提供的输出匹配。[0,0,32,0,0,0,0,0][0,0,40,0,0,0,0,0,0][0,0,31,0,0,0,0,0,33,0,0,0,0,0,0,0,0,0,0][0,0,0,35,0,0,0,0,0,0,0,0,0][0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0[0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 40, 0, 0, 0, 0, 0] [0, 0, 31, 0, 0, 0, 0, 0] [0, 0, 34, 0, 0, 0, 0, 0] [0, 0, 40, 0, 0, 0, 0, 0] [0, 0, 33, 0, 0, 0, 0, 0] [0, 0, 40, 0, 0, 0, 0, 0] [0, 0, 0, 0, 0, 0, 0, 0] [0, 0, 40, 0, 0, 0, 0, 0] [0, 0, 13, 0, 0, 0, 0, 0]这是我们应该得到的输出,我希望你修改你的问题。此外,代码,它是否产生了你发布的实际矩阵?