Der verstümmelte Code beim Ausführen der Java-Datei in cmd lautet wie folgt: (Empfohlen: Java-Video-Tutorial)
Grund:
Da das JDK eine internationale Version ist, wird javac.exe beim Kompilieren dies tun, wenn wir den Parameter -encoding nicht verwenden, um das Codierungsformat unseres JAVA-Quellprogramms anzugeben Rufen Sie zunächst das von unserem Betriebssystem verwendete Standardkodierungsformat ab. Wenn wir also beim Kompilieren eines Java-Programms nicht das Kodierungsformat der Quellprogrammdatei angeben, ruft JDK zunächst den Parameter file.encoding des Betriebssystems ab ( Es speichert das Standardkodierungsformat des Betriebssystems, z. B. WIN2k, dessen Wert GBK ist. Anschließend konvertiert JDK unser Java-Quellprogramm vom Kodierungsformat file.encoding in das Standard-UNICODE-Format in JAVA und legt es im Speicher ab.
Dann kompiliert Javac die konvertierte Unicode-Formatdatei in eine .class-Klassendatei. Zu diesem Zeitpunkt ist die .class-Datei UNICODE-codiert und wird vorübergehend im Speicher abgelegt Eine UNICODE-Datei. Die codierte und kompilierte Klassendatei wird in unserem Betriebssystem gespeichert, um die angezeigte .class-Datei zu bilden.
Für uns ist die .class-Datei, die wir schließlich erhalten haben, eine Klassendatei, deren Inhalt im UNICODE-Codierungsformat gespeichert ist. Sie enthält die chinesische Zeichenfolge in unserem Quellprogramm, wurde jedoch zu diesem Zeitpunkt durch die Datei geleitet. Das Kodierungsformat wird in das UNICODE-Format konvertiert.
Wenn wir ohne Einstellung kompilieren, entspricht dies der Verwendung des Parameters: javac -encoding gbk XX.java. Natürlich kommt es zu Inkompatibilität.
Lösung:
1. Konvertieren Sie in das UTF-8-Codierungsformat, aber es treten immer noch Fehler auf
Die Lösung ist: Sie sollten den Parameter -encoding verwenden Geben Sie die Kodierungsmethode an: javac -encoding UTF-8 XX.java
2. Start-->Computer-->Maus-Umkehrtaste (rechte Maustaste)-->Eigenschaften-->Erweitert Systemeinstellungen--> ;Umgebungsvariablen-->Systemvariablen
Neu. Geben Sie dann Folgendes ein: Variable „JAVA_TOOL_OPTIONS“, der Wert ist „-Dfile.encoding=UTF-8“
Dann bestätigen, bestätigen, nach der Bestätigung. Öffnen Sie ein neues Befehlszeilenfenster und geben Sie den Befehl javac erneut ein.
Weitere Java-Kenntnisse finden Sie in der Spalte Java Basic Tutorial.
Das obige ist der detaillierte Inhalt vonLösung für verstümmelte Zeichen in Java beim Ausführen von cmd. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!