从表单中的用户输入强制执行正确的UTF-8编码

时间:2010-07-21 15:50:30

标签: utf-8 euro

我有一个用asp.net编写的网页表单,允许用户输入内容,然后保存到数据库并写成xml文件,供第三方导入他们的系统。

我们将xml文件输出为UTF-8。

他们目前有一个问题,欧元符号(€)正在破坏他们的xml解析器,并出现以下错误:

解析器错误:输入不正确UTF-8,表示编码!

From符号看起来不错,但很明显,因为当用户将它复制到我的表单时,可能会从任何来源复制此符号,因此可能不是UTF-8编码。

我的问题:

1。)如果欧元符号是UTF-8编码,我怎么知道100%?是否有一些编辑器可以将其视为UTF-8?

2。)有没有办法在输入或粘贴到表单中时检查字符以确保它保存为UTF-8编码?

感谢大家的建议!

1 个答案:

答案 0 :(得分:0)

听起来您正在使用webform提交的数据并将其按原样放入XML中,而不首先验证它。这不是一个好主意。 Alwyas在使用之前验证您的数据。此外,请确保webform本身具有“charset = utf-8”属性,以便兼容的浏览器将数据以UTF-8格式传输到服务器。