Encoding 如何在Visual Basic 6中解码字符串
我正在尝试读取Visual Basic 6中的.DB(Paradox 5)文件。 除了编码/字符集,一切都正常。它显示为Encoding 如何在Visual Basic 6中解码字符串,encoding,vb6,odbc,paradox,Encoding,Vb6,Odbc,Paradox,我正在尝试读取Visual Basic 6中的.DB(Paradox 5)文件。 除了编码/字符集,一切都正常。它显示为Iieiei 75a而不是西里尔文字符串 这是我的ODBC连接字符串: Driver={Microsoft Paradox驱动程序(*.db)};DriverID=538;Fil=悖论4.X;DataCodePage=ANSI;溴化二苯醚=2;排序顺序=ASCII;自动翻译=否;DBQ=C:\数据库;DefaultDir=C:\Database 请注意,Borland Data
Iieiei 75a
而不是西里尔文字符串
这是我的ODBC连接字符串:
Driver={Microsoft Paradox驱动程序(*.db)};DriverID=538;Fil=悖论4.X;DataCodePage=ANSI;溴化二苯醚=2;排序顺序=ASCII;自动翻译=否;DBQ=C:\数据库;DefaultDir=C:\Database
请注意,Borland Database Desktop
等软件显示此字符串时没有任何问题。另外,在另一台电脑中一切都很好
我通过regedit设置了以下设置,因为它没有帮助:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Xbase]
"DataCodePage"="ANSI"
"BDE"=dword:00000002
我还尝试使用CharToOem
/Oem2Char
winapi函数,但没有任何帮助
有什么想法吗?好的,我通过更改以下注册表值解决了这个问题:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Xbase]
"DataCodePage"="ANSI"
"BDE"=dword:00000002
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"1252"="1251.nls"
上一个设置已解决此问题。好的,我已通过更改以下注册表值来解决此问题:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Jet\4.0\Engines\Xbase]
"DataCodePage"="ANSI"
"BDE"=dword:00000002
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"1252"="1251.nls"
上次设置解决了问题。当您告诉它使用
ANSI
时,它是否使用了当前会话的代码页?可能插入数据编码时使用的确切代码页以使其通用?当您告诉它使用ANSI
时,可能它使用当前会话的代码页?也许插入您的数据编码所使用的确切代码页以使其普遍工作?