Wie kann man chinesische (und andere nicht-ASCII) Zeichen in der Konsole anzeigen und eingeben?

9

Mein System: win7 ultimative 64 englische Version + r-3.1 (64).
Hier ist mein sessionInfo.

%Vor%

1.kann kein chinesisches Zeichen in r Konsole eingeben Wenn ich ein chinesisches Zeichen in der r-Konsole eingib, wird es zu einem verstümmelten Zeichen.

2. kann kein chinesisches Zeichen auf der r Konsole anzeigen Wenn ich Daten in r Konsole lese, wird das chinesische Zeichen zu einem verstümmelten Zeichen Sie können die Daten herunterladen und mit

testen %Vor%

Daten herunterladen

Bitte sehen Sie sich die Grafik an, um die Daten herunterzuladen, wenn Sie nicht wissen, wie Sie die Daten aus meinem Internet beziehen können.

Wie kann ich meinen PC so einrichten, dass chinesische Schriftzeichen in der r-Konsole korrekt angezeigt und eingegeben werden? Ich habe das chinesische Sprachpaket aktualisiert und aktiviert, aber das Problem bleibt bestehen.

    
it_is_a_literature 29.06.2014, 06:23
quelle

1 Antwort

4

Es ist wahrscheinlich nicht sehr gut dokumentiert, aber Sie möchten setlocale verwenden, um Chinesisch zu verwenden. Und die Methode gilt auch für viele andere Sprachen. Die Lösung ist nicht offensichtlich als offizielles Dokument von setlocale hat es nicht ausdrücklich als eine Methode zur Lösung der Anzeigeprobleme erwähnt.

%Vor%

Wenn Sie nur die Anzeigecodierung ändern möchten, ohne andere Aspekte der Gebietsschemata zu ändern, verwenden Sie LC_CTYPE anstelle von LC_ALL :

%Vor%

Das gilt natürlich nur für die offizielle Konsole R . Wenn Sie andere IDEs verwenden, wie zum Beispiel das sehr populäre RStudio , müssen Sie dies überhaupt nicht tun, um Chinesisch eingeben und anzeigen zu können, selbst wenn Sie nicht das chinesische Gebietsschema geladen haben.

Migrieren Sie einige nützliche Dinge aus den folgenden Kommentaren:

Wenn die Daten immer noch nicht korrekt angezeigt werden, sollten wir auch das Problem der Dateicodierung untersuchen. Wenn die Datei UTF-8 encodiert ist, dann funktioniert die Methode data <- read.table("you_file", sep=',', fileEncoding="UTF-8-BOM", header=TRUE) oder fileEncoding="UTF-8" abhängig davon, welche Kodierung sie wirklich hat.

Aber vielleicht möchten Sie sich von UTF-BOM fernhalten, da dies nicht empfohlen wird: Was ist zwischen UTF-8 und UTF-8 ohne BOM?

    
CT Zhu 02.07.2014, 01:42
quelle

Tags und Links