Frage:
Kopieren Sie die in Matlab unter Windows geschriebene Codedatei (.m) nach Linux (Ubuntu), und die Kommentare sind vorhanden Chinesisch Das ist alles Kauderwelsch und umgekehrt ist es das gleiche Problem.
Grund:
Die unter Windows verwendete Standardkodierung ist GB2312
, und die unter Linux verwendete Standardkodierung ist UTF-8
. Daher handelt es sich bei dem unter Windows generierten Code um eine GB2312-Kodierung, die unter Linux natürlich als verstümmelter Code erkannt wird.
Empfohlene kostenlose Video-Tutorials: Linux-Video-Tutorials
Lösung:
Transkodieren Sie das Dateikodierungsformat direkt.
Verwenden Sie den Befehl iconv
unter Linux, um die Kodierung der Datei zu ändern:
test1.m wird von GB2312 in UTF-8 konvertiert (der Code von Matlab unter Windows läuft unter Linux)
iconv -f GB2312 -t UTF-8 test1.m -o test1.m
test2.m wird von UTF-8 nach GB2312 konvertiert (der Code von Matlab unter Linux läuft unter Windows)
iconv -f UTF-8 -t GB2312 test2.m -o test2.m
Wenn zu viele Dateien vorhanden sind und eine Stapelverarbeitung erforderlich ist, können Sie dies tun Verwenden Sie das wie folgt geschriebene Shell-Skript, um die Kodierung stapelweise zu konvertieren.
Gebrauchsanweisung: Platzieren Sie das Skript in dem Ordner, der konvertiert werden muss, und führen Sie das Skript aus, um alle Dateien im aktuellen Verzeichnis und seinen Unterverzeichnissen in die angegebene Kodierungsmethode zu konvertieren.
Die Ausführung ist wie folgt:
Konvertieren von GB2312 nach UTF-8
./convertMatlab.sh win
Konvertieren von UTF-8 nach GB2312
./convertMatlab.sh linux
Tipp: Normale Benutzer Sie haben keine Ausführungsberechtigungen. Sie müssen chmod +x convertMatlab.sh
verwenden, um die Ausführungsberechtigungen zu erhöhen.
Empfohlene verwandte Artikel und Tutorials: Linux-Tutorial
Das obige ist der detaillierte Inhalt vonBeim Ausführen von in Windows geschriebenen Dateien unter Linux werden verstümmelte Zeichen angezeigt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!