Ich habe ein Problem mit der UTF8-Codierung in meiner asp.net mvc 2-Anwendung in C#. Ich versuche, Benutzer eine einfache Textdatei aus einer Zeichenfolge herunterladen. Ich versuche Byte-Array mit der folgenden Zeile zu erhalten:Wie GetBytes() in C# mit UTF8-Codierung mit BOM?
var x = Encoding.UTF8.GetBytes(csvString);
aber wenn ich es zum Download zur Rückkehr mit:
return File(x, ..., ...);
ich eine Datei erhalten, die ohne BOM ist so ich don Es werden keine kroatischen Zeichen richtig angezeigt. Dies liegt daran, dass mein Byte-Array nach der Codierung keine Stückliste enthält. Ich habe versucht, diese Bytes manuell einzufügen und dann erscheint es korrekt, aber das ist nicht der beste Weg, es zu tun.
Ich habe auch versucht, erstellen UTF8Encoding-Klasse-Instanz und übergibt einen booleschen Wert (True) zu seinem Konstruktor, um Stückliste, aber es funktioniert auch nicht.
Jeder hat eine Lösung? Vielen Dank!
Funktioniert wie ein Charme, danke! :) –
Danke! Ich bin verrückt geworden mit meinen Sonderzeichen, die nicht in Excel CSV funktionieren :) –
Der Klarheit halber ist 'Encoding.UTF8' äquivalent zu' new UTF8Encoding (true) '. Der Parameter steuert, ob 'GetPreamble()' eine Stückliste ausgeben wird. – Stijn