Wie füge ich dem Antwort-Stream in ASP.NET Codierungsinformationen hinzu?

Ich habe folgenden Code:

<code>public void ProcessRequest (HttpContext context) 
{
    context.Response.ContentType = "text/rtf; charset=UTF-8";
    context.Response.Charset = "UTF-8";
    context.Response.ContentEncoding = System.Text.Encoding.UTF8;
    context.Response.AddHeader("Content-disposition", "attachment;filename=lista_obecnosci.csv");
    context.Response.Write("ąęćżźń󳥌ŻŹĆŃŁÓĘ");
}
</code>

Wenn ich versuche, eine generierte CSV-Datei zu öffnen, tritt folgendes Verhalten auf:

In Notepad2 ist alles in Ordnung.In Word - Konvertierungsassistent wird geöffnet und fordert Sie auf, den Text zu konvertieren. Es schlägt UTF-8 vor, was irgendwie in Ordnung ist.In Excel - ich bekomme echtes Chaos. Keines dieser polnischen Zeichen kann angezeigt werden.

Ich wollte diese speziellen Kodierungsinformationszeichen vor meine Zeichenkette schreiben, d. H.

<code>context.Response.Write((char)0xef);
context.Response.Write((char)0xbb);
context.Response.Write((char)0xbf);
</code>

aber das nützt nichts. Der Antwortstrom behandelt dies als normale Daten und wandelt sie in etwas anderes um.

Ich würde mich über Hilfe bei dieser Sache freuen.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage