如何处理从条形码扫描仪返回的二进制数据

How to handle binary data returned from barcode scanner?

本文关键字:返回 扫描仪 二进制 数据 条形码 何处理 处理      更新时间:2023-09-26

我有一台二维条形码扫描仪(Honeywell Xenon 1900)。

扫描1D条形码很容易,因为扫描仪模拟键盘事件并发送纯文本。

但当我扫描PDF417格式的二维条形码时,扫描仪会发送二进制数据。如何捕获和解码这些数据?有些符号是不可打印的,所以扫描到网页上的表单中是不起作用的。

我对这个问题的解决方案是使用COM端口。

我配置了扫描仪,所以它不是以键盘事件的形式发送数据,而是在虚拟COM端口中发送数据。然后我有了Java小程序,它监听这个端口(使用RXTX)。然后COM端口不是空的,我可以获取数据并解析它。

您已经标记了这个java和javascript。然而,您确实没有向我们提供您的申请的任何细节。尽管如此,可以使用base64协议来处理javascript中二进制数据的传输。使用两种方法btoa()atob()

function toBase64 () {
            return window.btoa(data);
        }
function fromBase64 (strBase64){
            data = window.atob(strBase64);
        }

不过,我认为对您来说,这个概念(我只是猜测,因为您还没有详细解释您正在做什么)是在将数据传输到javascript/html/web应用程序之前,先对数据进行base64ENCODE。我想您将使用java来完成此操作。一旦您将base64编码的数据发送到web应用程序,您就可以很容易地处理它。