二维码字段应以标签长度值(TLV)格式编码,标签值在相邻表的“标签”列中指定。
TLV 编码应如下:
标记:上面提到的标记值存储在一个字节中。长度:字段值的UTF8编码产生的字节数组的长度。长度应存储在一个字节中。值:由字段值的 UTF8 编码产生的字节数组。
寻找 Asp.net/Vb.net
提前致谢
我能够在 vb.net 中成功创建 TLV 编码,并通过了 Zatca 验证。我用 5 个输入创建了一个非常简单的表单: 在此处输入图像描述
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Try
Dim value1 As String = getTLV(1, TextBox1.Text)
Dim value2 As String = getTLV(2, TextBox2.Text)
Dim value3 As String = getTLV(3, TextBox3.Text)
Dim value4 As String = getTLV(4, TextBox4.Text)
Dim value5 As String = getTLV(5, TextBox5.Text)
Dim b As Byte() = System.Text.Encoding.UTF8.GetBytes(value1 & value2 & value3 & value4 & value5)
Dim t As String = Convert.ToBase64String(b)
TextBox6.Text = t
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Private Function getTLV(tag As Integer, value As String) As String
Return Chr(tag) & Chr(value.Length) & value
End Function