我已经为PB 6.5中的应用程序构建了加密函数,它工作正常,它接收一个人的数据,加密它并将结果字符串存储在数据库中。另一方面,我可以在PB 10.5中构建的应用程序中访问此数据(因为两个应用程序共享数据库)。
问题是我无法正确恢复数据:( 我用谷歌搜索了一些文档。我知道PB6.5使用ANSI编码而PB10.5使用UTF-16LE,所以我尝试了我在文档中找到的功能,看看我得到了什么:
lb_text = Blob(original_string, EncodingANSI!)
ls_string1 = String(lb_text, EncodingANSI!)
ls_string2 = String(lb_text, EncodingUTF16LE! )
ls_string1给了我一个非常类似于用PB6.5编码的原始字符串的字符串,ls_string2给了我一个字符串,它是'方字符'的序列:㔐
我的问题是:
有没有办法在不同版本的PB之间标准化编码?或......
是否有一个函数(在PB10.5中)将字符串转换为我需要的编码?
答案 0 :(得分:0)
问题在于我的加密功能:我使用了一个字符串(ascii_string)和1 {255的ASCII个字符来编码数据,但我发现在1到31之间的位置有“奇怪的”字符。 / p>
所以,在PB6.5中我做了:
for i=32 to 255
ascii_string += string(char(i))
next
和PB 10.5:
for i=32 to 256
aux = Blob(char(i))
ascii_string += String(aux, EncodingANSI!)
next
它适用于每个版本!