在aspx页面中显示瑞典字符

在aspx页面中显示瑞典字符

问题描述:

在aspx页面中,组合框以错误的方式显示瑞典字符。它显示为“Réunion”而不是“Re'union”?这个值是从oracle数据库中检索的?请提出解决方法来解决这个问题?注:文化和UICulture属性尝试使用。但不工作“在aspx页面中显示瑞典字符

+0

什么是页面本身的字符编码?内容类型的元标记和标题值是什么? – Oded

+5

建议阅读:http://www.joelonsoftware.com/articles/Unicode.html – Oded

首先,确定您是否从Oracle数据库正确接收到字符串(在调试器中查看收到的字符串)。如果字符串已被接收错误,这意味着您没有正确设置连接上的数据库字符集。你应该解决这个问题。一个讨厌的解决方法是通过Encoding.UTF8.GetString(Encoding.GetEncoding(1252).GetBytes(garbledString))之类的东西来“解决”乱码字符串。

您可能使用与默认UTF-8不同的HTML页面编码或正在读取数据库中的错误值。您可以使用Firebug或IE开发工具检查编码标题以及文档编码。你可以检查你的数据库列是Unicode或ASCII在这种情况下,你需要的编码。有两种简单的测试,你可以做

  1. 直接添加一些瑞典文成C#字符串,并将其分配给一个标签。看看它是如何呈现的。如果它是好的,那么你的页面编码是OK。
  2. 从数据库中检索值后检查一个断点,并检查调试器是否为i在调试器窗口中正确显示。

如果1显示不正确,但是2显示正确,那么您的页面有编码问题。如果你1正确显示,但2不是你在读取或写入数据库值时遇到问题。