我有一个旧系统,它varchar
在其数据库中使用数据类型来存储阿拉伯名称,现在名称出现在数据库中,如下所示:
"ãíÓÇÁ ÇáãÈíÖíä"
现在我正在使用 VB.NET 构建一个新系统,如何读取这些名称以显示为阿拉伯字符?
另外我需要在这里指出,旧系统即使存储了我之前提到的数据,它也会将字符转换为正确的格式。
如何在新系统和 SQL Server Management Studio 中正确显示?
我有一个旧系统,它varchar
在其数据库中使用数据类型来存储阿拉伯名称,现在名称出现在数据库中,如下所示:
"ãíÓÇÁ ÇáãÈíÖíä"
现在我正在使用 VB.NET 构建一个新系统,如何读取这些名称以显示为阿拉伯字符?
另外我需要在这里指出,旧系统即使存储了我之前提到的数据,它也会将字符转换为正确的格式。
如何在新系统和 SQL Server Management Studio 中正确显示?
我遇到了同样的问题,我通过两个步骤解决了它:
1.将DB中列的数据类型改为nvarchar
2.使用编码将数据变成阿拉伯语
我使用了以下功能
private string GetDataWithArabic(string srcData)
{
Encoding iso = Encoding.GetEncoding("iso-8859-1");
Encoding unicode = Encoding.Default;
byte[] unicodeBytes = iso.GetBytes(srcData);
return unicode.GetString(unicodeBytes);
}
但请确保在数据库数据上使用此方法一次,因为如果使用两次会损坏数据
你试过nvarchar吗?您可以在下面的链接中找到一些有用的信息
我想你的答案在这里:“存储和检索非英文字符” http://aalamrangi.wordpress.com/2012/05/13/storing-and-retrieving-non-english-unicode-characters-hindi-czech-arabic -etc-in-sql-server/