2009-05-06 4 views
0

xmlの一部をxslトランスフォームで処理してクライアントに送信して、HTML添付ファイルを作成しようとしています。私が「開く」をクリックすると、IEはhtmlを正しく表示しますが、添付ファイルを保存してFirefoxで開くと、すべての場所に があります。「Â」文字が表示されます。これは私たちのエンコーディングと関係があると感じています。ここでは、関連するコードは次のとおりです。xsltからのHTML添付ファイルの作成、問題のコード化、asp.net

Response.Clear(); 
    Response.ContentEncoding = Encoding.UTF8; 
    Response.ContentType = "text/html"; 
    Response.Charset = "utf-8"; 
    Response.AddHeader("Content-Disposition", 
     String.Format("attachment; filename={0}; size={1}", filename, rgen.Output.Length)); 
    //Response.Flush(); 
    Response.Write(rgen.Output); 
    Response.Flush(); 
    Response.End(); 

rgen.Outputは、変換されたHTMLが含まstringwriter.tostring(から来ている文字列)です。

xsltは常にエンコードをUTF-16に設定しているようですが、上記のコードをutf-16に変更しても動作しません。何が起きているのか?

ありがとうございました。

+0

これはXSLTとは関係ありません。 .NETの文字列はUTF-16 [チェック](http://weblogs.asp.net/rmclaws/archive/2003/07/31/22080.aspx)にあります。 –

答えて

0

XSLドキュメントの出力はどのように見えますか?そこにはどのエンコードが設定されていますか?

<xsl:output encoding="utf-8" omit-xml-declaration="yes" method="html" indent="no" ></xsl:output> 
関連する問題