4

PDFドキュメントに変換されるHTMLページに短剣「†」記号を書き込もうとしていますが、これはPDFに「â€」として表示されます

このシンボルにHTMLコードを使用する必要があることを理解しています†

'€'に対してこれを正常に実行しましたが、これらの場合、コードをHTMLに直接記述しました。この場合、私はXMLファイルからシンボルを読み取っています。シンボルを含む変数の値を調べると、「†」と表示されます。

次のように、XMLファイルからシンボルとコードを読み取ろうとしたことに注意してください。

<fund id="777" countryid="N0" append="&#8224;" />

<fund id="777" countryid="N0" append="†" />

ただし、両方ともシンボルとして変数に格納されており、ページに書き込むと、両方とも「â€」としてレンダリングされます。また、私は次のことを試しました:

string code = "&#8224;";
string symbol = "†";
string htmlEncodedCode = HttpUtility.HtmlEncode(code);
string htmlEncodedSymbol = HttpUtility.HtmlEncode(symbol);

tc.Text = fund.Name + code + " " + symbol + " " + 
    htmlEncodedCode + " " + htmlEncodedSymbol;

しかし、最初の作品だけです。ドキュメントでは次のように表示されます。

FundName† †&#8224; â€

誰かがこれを機能させる方法を提案できますか?

アップデート:

以下の@JamesCurranの答えは正しかった。わかりやすくするために、XMLを次のように変更する必要がありました。

<fund id="777" countryid="N0" append="&amp;dagger;" /> 

そして私のC#では:

tc.Text = fund.Name + append;
4

3 に答える 3

5

そのシンボルは一般に「短剣」として知られており、HTMLではエンティティによって表されます。 &dagger;

于 2010-08-05T14:29:20.787 に答える
1

これはエンコーディングの問題です。â€は、おそらくUTF-8の短剣のラテン語-1表現です。短剣をUTF-8からISO-8859-1に変換してみてください。

于 2010-08-05T14:28:14.800 に答える
0

XMLファイルを使用して、おそらくやりたいことは、次のようなものです。

<fund id="777" countryid="N0" append="&amp;#8224;" />

その理由は、XMLファイルが&amp;&記号として解釈し、残りをリテラルテキストとして解釈するためです。したがって、あなたのhtmlであなたは得るでしょう、&#8224;そしてそれはあなたをするべきです。

于 2010-08-05T14:53:17.040 に答える