无法使用10个字符的条形码功能 [英] Does Not Work 10 Character Barcode Function

查看:51
本文介绍了无法使用10个字符的条形码功能的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Dim Code128Digits As String = " !""#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~"


    ' This function generates a barcode based on the text, symbology
    ' and check digit settings you provide
    Function GenerateBarcode(ByVal Text As String, _
                           ByVal CheckDigit As Boolean) As String
        ' Return string
        Dim s As String = ""
        ' Individual character from input
        Dim c As String = ""
        ' Sum of all the values of the characters to generate check digit
        Dim v As Integer = 0
        ' Error flag
        Dim err As Boolean = False
        ' Generate barcode based on symbology
        ' Loop through each input character

        For i As Integer = 0 To Text.Length - 1
            c = Text.Substring(i, 1)
            ' Is it a valid digit?
            Dim j As Integer = Code128Digits.IndexOf(c)
            If (j > -1) Then
                ' We'll add to our check digit calculation
                v = v + (j * (i + 1))
                s = s & c
            Else
                err = True
            End If
        Next
        ' Add Start Symbol
        s = Chr(196) & s
        v = v + 103


        ' Add the check digit if one was requested

        If (CheckDigit) Then
            v = v Mod 103
            If (v <= 94) Then
                s = s & Code128Digits.Substring(v, 1)
            Else
                ' If check digit value is greater than 94, we need to add
                ' special characters
                Dim t As String = Chr(195) + Chr(201) + Chr(202) + Chr(200) + Chr(203) + Chr(204) + Chr(205) + Chr(206)
                s = s & t.Substring(v - 95, 1)
            End If
        End If
        ' Add a Stop Symbol
        s = s.Replace(" ", Chr(207)) & Chr(199)
        If err = True Then
            s = ""
        End If
        ' Return the resultant string
        Return s
    End Function



我正在使用此功能,
条形码扫描仪读取6个字符,例如:我输入"wcf004"
条码扫描器无法读取10个字符,例如:我输入了"fnc0000580"

请帮助我



I am using This Function,
barcode scanner reading 6 Character ,eg: i input "wcf004"
barcode scanner cannot reading 10 Character, eg: I input "fnc0000580"

Please Help me

推荐答案

%&'()* +,-./0123456789:;< =>?@ ABCDEFGHIJKLMNOPQRSTUVWXYZ [\] ^ _`abcdefghijklmnopqrstuvwxyz {|}〜" ' 此函数基于文本符号系统生成条形码. ' 并检查您提供的数字设置 函数 GenerateBarcode( ByVal 文本 As 字符串,_ ByVal CheckDigit As Boolean ) As 字符串 ' 返回字符串 Dim s As 字符串 = " ' 输入中的单个字符 Dim c As 字符串 = " ' 所有字符值的总和,以生成校验位 Dim v As 整数 = 0 ' 错误标志 Dim 错误 As 布尔值 = 错误 ' 根据符号系统生成条形码 ' 遍历每个输入字符 对于 i As 整数 = 0 Text.Length- 1 c = Text.Substring(i, 1 ) ' 它是有效数字吗? Dim j As 整数 = Code128Digits.IndexOf (C) 如果(j> -1)然后 ' 我们将添加到我们的校验位计算中 v = v +(j *(i + 1 )) s = s& C 其他 err = 正确 结束 如果 下一步 ' 添加开始符号 s = Chr( 196 )& s v = v + 103 ' 如果要求输入校验位,则添加校验位 如果(CheckDigit)然后 v = v Mod 103 如果(v< = 94 )然后 s = s& Code128Digits.Substring(v, 1 ) 其他 ' 如果校验位的值大于94,则需要添加 ' 特殊字符 Dim t As 字符串 = Chr( 195 )+ Chr( 201 )+ Chr( 202 )+ Chr( 200 )+ Chr( 203 )+ Chr( 205 )+ Chr( 95 1 ) 结束 如果 结束 如果 ' 添加停止符号 s = s.Replace(" ,Chr( 207 ))& Chr( 199 ) 如果 err = 真实 然后 s = " 结束 如果 ' 返回结果字符串 返回 结束 功能
%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~" ' This function generates a barcode based on the text, symbology ' and check digit settings you provide Function GenerateBarcode(ByVal Text As String, _ ByVal CheckDigit As Boolean) As String ' Return string Dim s As String = "" ' Individual character from input Dim c As String = "" ' Sum of all the values of the characters to generate check digit Dim v As Integer = 0 ' Error flag Dim err As Boolean = False ' Generate barcode based on symbology ' Loop through each input character For i As Integer = 0 To Text.Length - 1 c = Text.Substring(i, 1) ' Is it a valid digit? Dim j As Integer = Code128Digits.IndexOf(c) If (j > -1) Then ' We'll add to our check digit calculation v = v + (j * (i + 1)) s = s & c Else err = True End If Next ' Add Start Symbol s = Chr(196) & s v = v + 103 ' Add the check digit if one was requested If (CheckDigit) Then v = v Mod 103 If (v <= 94) Then s = s & Code128Digits.Substring(v, 1) Else ' If check digit value is greater than 94, we need to add ' special characters Dim t As String = Chr(195) + Chr(201) + Chr(202) + Chr(200) + Chr(203) + Chr(204) + Chr(205) + Chr(206) s = s & t.Substring(v - 95, 1) End If End If ' Add a Stop Symbol s = s.Replace(" ", Chr(207)) & Chr(199) If err = True Then s = "" End If ' Return the resultant string Return s End Function



我正在使用此功能,
条形码扫描仪读取6个字符,例如:我输入"wcf004"
条码扫描器无法读取10个字符,例如:我输入了"fnc0000580"

请帮助我



I am using This Function,
barcode scanner reading 6 Character ,eg: i input "wcf004"
barcode scanner cannot reading 10 Character, eg: I input "fnc0000580"

Please Help me


这篇关于无法使用10个字符的条形码功能的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆