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

时间:2015-03-24 13:39:21

标签: java usb barcode-scanner usb4java

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

但是结果是一个字节数组,格式如下。它显示的数字少于第3字节数组位置所需的原始数字。我也加了回车符。它返回40用于回车 - 而不是13(根据ASCII标准)。

我正在使用HOneywell Handheld扫描仪xenon 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);

            }
}

0 个答案:

没有答案