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.