如何读取存储在 VARCHAR 字段中的 ASP.Net 中的阿拉伯字符

How to read Arabic character in ASP.Net that is stored in VARCHAR field

在我的数据库中有一个存储阿拉伯名字的字段。字段类型为 VARCHAR.

当我在 SQL 编辑器中 运行 SELECT 语句获取记录时,它显示值 ãÇ äÇá 实际上是 ما نال

问题是当我在 ASP.Net 中显示此值时,它显示为 ÒÃ õÃß。我已将页面编码更改为 UTF-8,但没有成功。如何在存储在 VARCHAR 字段中的 ASP.Net 中正确显示阿拉伯语名称?请注意无法在数据库中更改字段类型。

您的排序错误 - 您将阿拉伯语排序的数据存储在非阿拉伯语排序的 varchar 列中。

但是,您应该能够通过使用 collate 关键字为 select 强制执行正确的排序规则。快速示例:

select [Text] collate Arabic_CI_AI_KS_WS from YourTable;

如果这没有帮助,则数据已错误地插入 table。有点问题。

首先,您必须找到导致您现在所处位置的正确错误编码。问题是,很可能您实际上正在处理 MS SQL 特定的编码,这在 .NET 中可能不容易处理。

找到解决方案。使用

KeepOrgMultibyte=1

在 web.config 中的 Sybase 连接字符串中。示例如下。

<add name="Sybase" connectionString="Data Source='192.168.0.70';Port=9100;UID='myuser';PWD='mypassword';Database='mydatabase';KeepOrgMultibyte=1;"/>