Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 36918|Antwort: 2

[.NET Core] .NET Core Konsole chinesische Zeichen verzerrte Zeichen

[Link kopieren]
Veröffentlicht am 17.05.2017 14:44:09 | | | |



Das .NET Core-Konsolenprogramm ist sehr einfach, das heißt, es fordert den Benutzer auf, eine URL einzugeben und dann die vom Benutzer eingegebene URL einzugeben, sodass jeder es auf einen Blick versteht, aber die chinesischen Schriftzeichen sind verwirrt.

Fehlerursachen:

'GB2312' ist kein unterstützter Codiername. Informationen zur Definition einer benutzerdefinierten Codierung finden Sie in der Dokumentation zur Methode Encoding.RegisterProvider.
Parametername: Name

Die obige allgemeine Bedeutung ist, dass Encoding keine GB2312-Codierung unterstützt und Sie die Methode Encoding.RegisterProvider verwenden müssen, um den Anbieter zu registrieren.



Wie löst man das?

Lösung 1:

Die Einstellung der Textausgabe der Zeichen, die von der Einstellungs-Konsole angezeigt werden, wird per Codierung auf die entsprechende Konsole angewendet. Der Systemort, der von der Standard-Codepage-Konsole verwendet wird, wird bestimmt.



Lösung 2:

1: Verwenden Sie die Methode Encoding.RegisterProvider, um den Anbieter zu registrieren

2: CodePagesEncodingProvider im Paket System.Text.Encoding.CodePages

3: nuget führt den Befehl aus: Install-Package System.Text.Encoding.CodePages

4: Code hinzufügen:










Vorhergehend:Centos Installation .NET Core Environment Tutorial
Nächster:Führe das .net-Core-Konsolenprogramm unter Linux/Centos aus [Quellcode]
 Vermieter| Veröffentlicht am 17.05.2017 14:46:57 |

Ich möchte meine Meinung teilen: Der Grund für die verzerrten Zeichen auf der Konsole ist, dass die Standard-Codierungsseite der chinesischen Windows-Kommandozeile GB2312 ist, und wenn du chinesisch ausgeben willst, musst du nur die Programmierseite der Konsole auf Unicode ändern.
Geben Sie chcp 65001 in cmd ein und führen Sie das Programm aus oder fügen Sie eine Zeile zum Programm hinzu
Console.OutputEncoding = Encoding.Unicode;
Der Grund für die verzerrte Webseite ist auch, dass das Programm die Kodierung nicht angibt und standardmäßig Unicode verwendet, während der Browser in der chinesischen Umgebung standardmäßig gbk verwendet. Du kannst dem Browser sagen, dass er utf8 verwenden soll, indem du ContentType einstellst.
Noch im Kontext. Response.WriteAsync ("Hallo, willkommen in Peking"); Vorangegangen von:
Kontext. Response.ContentType = "Text/Plain; charset=UTF-8";
Wenn Sie jedoch Chinesisch anzeigen, müssen Sie System.Text.Encoding.CodePages nicht ohne besondere Anforderungen angeben
Veröffentlicht am 12.11.2022 13:40:04 |
Für die spätere Verwendung aufheben
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com