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

从表单中的用户输入强制执行适当的UTF-8编码,utf-8,euro,Utf 8,Euro,我有一个用asp.net编写的web表单,允许用户输入内容,然后将内容保存到数据库中,并作为xml文件写出,供第三方导入其系统 我们将xml文件输出为UTF-8 他们目前有一个问题,欧元符号(€)破坏了他们的xml解析器,出现以下错误: 分析器错误:输入不正确UTF-8,请指示编码 From符号在我看来是可以的,但很明显,当用户将此符号复制到我的表单中时,它可能不是UTF-8编码的,因为用户可以从任何源复制此符号 我的问题是: 1.)我如何100%知道欧元符号是否为UTF-8编码?是否有一些编辑

我有一个用asp.net编写的web表单,允许用户输入内容,然后将内容保存到数据库中,并作为xml文件写出,供第三方导入其系统

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

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

分析器错误:输入不正确UTF-8,请指示编码

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

我的问题是:

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

2.)是否有办法在输入或粘贴到表单中时检查字符,以确保其保存为UTF-8编码

谢谢大家的建议


Ed

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

Notepad++允许您在不同编码之间转换/编码文件。(状态栏显示当前和菜单“格式”的更改)