【发布时间】:2022-01-02 01:21:34
【问题描述】:
我正在尝试将字符串转换为十六进制,然后再转换为 Base64,它正在工作,但获取的 base64value 不匹配 - Vs 2008(.net 3.5) & vs 2019 (.net 4.6)
这是我的代码 --十六进制字符串
Dim QrCodeHex as string ="010c426f6273205265636f726473020f3331303132323339333530303030330314323032322d30342d32355431353a33303a30305a0407313030302e303005063135302e3030"
dim QrCodeBase64En as string = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(QrCodeHex))
我得到这个结果 - 是错误的
MDEwYzQyNmY2MjczMjA1MjY1NjM2ZjcyNjQ3MzAyMGYzMzMxMzAzMTMyMzIzMzM5MzMzNTMwMzAzMDMwMzMwMzE0MzIzMDMyMzIyZDMwMzQyZDMyMzU1NDMxMzUzYTMzMzAzYTMwMzA1YTA0MDczMTMwMzAzMDJlMzAzMDA1MDYzMTM1MzAyZTMwMzA = P>
正确的结果是
AQxCb2JzIFJlY29yZHMCDzMxMDEyMjM5MzUwMDAwMwMUMjAyMi0wNC0yNVQxNTozMDowMFoEBzEwMDAuMDAFBjE1MC4wMA==
我如何得到它。
【问题讨论】:
-
第一个 base64 字符串包含十六进制字符串。第二个(正确的)包含基础字符串。
Bobs Records3101223935000032022-04-25T15:30:00Z1000.00150.00但您写道您正在尝试将字符串转换为十六进制然后转换为 Base64,但转换为十六进制的步骤似乎没有必要。只需将原始字符串转换为 base64。 -
我们需要base64的以下细节。
-
我们需要base64的以下细节。标签 + 长度 + 值。标签为 1 ,长度为 12 ,数据为 "Bobs Records" 。 bas64 字符串到十六进制的转换应该是 010c426f6273205265636f726473。例如 112Bobs 记录到 base64 并将 base 64 解码为十六进制 010c426f6273205265636f726473。请帮忙
-
感谢 - 现在可以使用了