Gestern hat mir ein Junior -Bruder, der gerade Java gelernt hatte, ein Programm geschickt und sagte, er könne es lebendig und sterben, und er berichtete immer von Coding -Problemen. Er hat es selbst ausprobiert, aber es gab ein Problem ...
Wenn wir eine Java -Quelldatei zum Speichern bearbeiten, wird sie in der Standardzeichencodierung des Betriebssystems gespeichert (der Standardzeichen von Windows XP ist GBK). Beim Aufrufen des Javac -Befehls wird die Quelldatei in einem GO codiert und konvertiert. Wenn kein Zeichensatz angegeben wird, wird es aus dem Standardzeichen des Betriebssystems in den Standard -Unicode -Zeichen in Java konvertiert, und dann wird die Quelldatei in eine Klassendatei kompiliert und in Form der Unicode -Codierung auf der Festplatte gespeichert.
Nachdem ich den Fehler sorgfältig überprüft hatte, stellte ich fest, dass es sich um ein Problem der Dateicodierung handelte. Seine Akte wurde von UTF -8 codiert, so dass das -codieren hinzugefügt und erfolgreich zusammengestellt wurde ~~
public class test {public static void main (String [] args) {System.out.println ("Hallo!"); }}D:/> Javac test.java
Test.java:3: Warnung: System.out.println ("日本?); ^Test.java: 3: ';' ' System.out.println ("日本?); ^Test.java: 5: Das Ende der Datei wurde bei der Syntax -Parsen erreicht}D:/> Javac -coding UTF -8 Test.java
Wenn JDK kompiliert wird und das Codierungsformat des Java -Source -Programms nicht mit dem Parameter des -codierung angegeben wird, wird Javac zunächst das vom Betriebssystem verwendete Codierungsformat erhält. Wenn das Java -Programm zusammengestellt wird, wird JDK zunächst das Standard -Codierungsformat des Betriebssystems erhalten, wenn das Codierungsformat der Quellprogrammdatei nicht angegeben ist. Anschließend kompiliert Javac die konvertierte Unicode -Formatdatei in eine Klassenklassendatei. Zu diesem Zeitpunkt ist die .class -Datei Unicode codiert und vorübergehend in den Speicher platziert. Anschließend speichert JDK die kompilierte Klassendatei, die in Unicode codiert ist, vor dem Betriebssystem, um eine .CLASS -Datei zu bilden. Die endgültige .CLASS -Datei ist eine Klassendatei mit Inhalten, die im Unicode -Codierungsformat gespeichert sind. Es enthält chinesische Zeichenfolgen im Quellprogramm, aber zu diesem Zeitpunkt wurde es über das Installationssystem -Codierungsformat in das Unicode -Format konvertiert.
Im Allgemeinen bevorzuge ich UTF-8, das normal unter Windows und Linux ausgeführt werden kann ...
Das obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, es wird für das Lernen aller hilfreich sein und ich hoffe, jeder wird Wulin.com mehr unterstützen.