读卡器字符串问题
Public Declare Function GetPosInfo Lib "ComDll.dll" (ByVal psCardData As String, nTimeOut As Integer) As Integer
这是个读卡器的读卡函数,用这个函数来读取出一串字符串
例如读出字符串是"广东省解放路120号 51000010A95B120D"
"地址:广东省解放路120号 "
"区号:510000"
"检验码:10A95B120D"
我是用下面那个函数来截取的
问题就是.有时截取出来的字符变成"区号:000001" ,"检验码:0A95B120D"
因为读卡器供应商说他那个读出来是ascii码.所以我怀疑是不是我的读取程序的编码问题
或者麻烦各位帮忙看下我的这个函数有没有问题?
或者是其它的问题
Public Function getCardSubString(strCard As String, startPosition As Integer, strlength As Integer) As String
Dim byteAry() As Byte
Dim temAry() As Byte
Dim str As String
Dim I As Integer
Dim J As Integer
byteAry = Space$(256)
temAry = Space$(strlength / 2 + 1)
byteAry = StrConv(strCard, vbFromUnicode)
J = 0
For I = startPosition To startPosition + strlength - 1
temAry(J) = byteAry(I)
J = J + 1
Next I
这是个读卡器的读卡函数,用这个函数来读取出一串字符串
例如读出字符串是"广东省解放路120号 51000010A95B120D"
"地址:广东省解放路120号 "
"区号:510000"
"检验码:10A95B120D"
我是用下面那个函数来截取的
问题就是.有时截取出来的字符变成"区号:000001" ,"检验码:0A95B120D"
因为读卡器供应商说他那个读出来是ascii码.所以我怀疑是不是我的读取程序的编码问题
或者麻烦各位帮忙看下我的这个函数有没有问题?
或者是其它的问题
Public Function getCardSubString(strCard As String, startPosition As Integer, strlength As Integer) As String
Dim byteAry() As Byte
Dim temAry() As Byte
Dim str As String
Dim I As Integer
Dim J As Integer
byteAry = Space$(256)
temAry = Space$(strlength / 2 + 1)
byteAry = StrConv(strCard, vbFromUnicode)
J = 0
For I = startPosition To startPosition + strlength - 1
temAry(J) = byteAry(I)
J = J + 1
Next I
...全文
相关推荐
Java Socket Udp网络读卡器服务器端源码.rar
Java编写的Socket Udp通讯源码,展示了Java绑定IP监听Udp端口;解析端口接收到的数据包获取读卡器上传的读卡数据;向读卡器发送读卡、写卡、驱动读卡器显示文字、播报TTS语音等指令;
关于二代身份证读卡器地二次开发 (2).pdf
。。。
web端接收读卡器卡片信息[可运行源码]
本文详细介绍了web端如何接收和处理读卡器卡片信息的流程。首先,读卡器会解析卡片信息并形成固定格式的字符串,包含卡片写入的数据和原数据(如身份证的姓名、身份证号等)。web页面需要通过input标签接收这些信息,并处理可能的编码问题。文章还提到了接收卡片信息的注意事项,如确保浏览器处于激活状态、input标签保持focus状态,以及避免输入法干扰导致的数据错乱。最后,提供了解决中文输入法干扰的方法,即将input的type属性设置为password。
身份证读卡器接口
本人亲测试,支持各种阅读器对接,帮助类是C#编写的。
明华读卡器Java例程
本资源是关于明华读卡器的Java例程,真实可用。自己做过测试。


COM/DCOM/COM+
