C# 如何转换符号-“†&引用;到HTML代码?
我试图将匕首“†”符号写入转换为PDF文档的HTML页面,但它在PDF中显示为“–欧元” 我知道我需要为这个符号使用HTML代码,即C# 如何转换符号-“†&引用;到HTML代码?,c#,symbols,html-encode,C#,Symbols,Html Encode,我试图将匕首“†”符号写入转换为PDF文档的HTML页面,但它在PDF中显示为“–欧元” 我知道我需要为这个符号使用HTML代码,即† 我已经为€成功地完成了这项工作,但在这些情况下,我已经将代码直接写入HTML。在本例中,我从XML文件中读取符号。当我检查包含符号的变量值时,它显示为“†” 我应该注意,我已经尝试从XML文件中读取符号和代码,如下所示: <fund id="777" countryid="N0" append="†" /> 但只有第一
†代码>
我已经为€成功地完成了这项工作,但在这些情况下,我已经将代码直接写入HTML。在本例中,我从XML文件中读取符号。当我检查包含符号的变量值时,它显示为“†”
我应该注意,我已经尝试从XML文件中读取符号和代码,如下所示:
<fund id="777" countryid="N0" append="†" />
但只有第一个有效。文件中显示为:
FundName† †† â€
有人能建议我如何让它工作吗
更新:
@詹姆斯·科伦下面的回答是正确的。为了清楚起见,我不得不将XML更改为:
<fund id="777" countryid="N0" append="&dagger;" />
这是一个编码问题。–欧元可能是UTF-8中匕首的拉丁-1表示形式。尝试将匕首从UTF-8转换为ISO-8859-1。该符号通常被称为“匕首”,并由实体以html表示:
&dagger代码>†对于XML文件,您可能希望执行以下操作:
<fund id="777" countryid="N0" append="&#8224;" />
原因是XML文件将解释&
作为&符号,其余作为文本。因此,在html中,您将获得†代码>就可以了。…使用有效的版本?@Jason,有效的版本是硬编码到C中的版本。这不是一个选项。将其作为
存储在XML文件中会返回错误:引用未声明的实体“dagger”。
。。我需要在XML中以不同的方式引用它吗?@DaveDev:不幸的是,XML不像HTML那样理解相同的命名实体。但是,理论上可以将其作为返回&;dagger
,这将(希望)起作用。或者尝试使用UTF-8.0渲染PDF。阅读Joel Spolsky的《每个软件开发人员绝对、绝对必须了解Unicode和字符集的最低要求》(没有借口!):真的@这更可能是一个HTML问题。HTTP内容的默认编码是ISO-8859-1。因此,如果HTML页面的编码未设置为UTF-8,则PDF呈现程序将使用UTF-8。
<fund id="777" countryid="N0" append="&dagger;" />
tc.Text = fund.Name + append;
<fund id="777" countryid="N0" append="&#8224;" />