Wir versuchen, Java und UTF-8 unter Windows zu verwenden. Die Anwendung schreibt Protokolle auf der Konsole und wir möchten UTF-8 für die Protokolle verwenden, da unsere Anwendung über internationalisierte Protokolle verfügt.Java, UTF-8 und Windows-Konsole
Es ist möglich, die JVM so zu konfigurieren, dass UTF-8 mit -Dfile.encoding=UTF-8
als Argumente für die JVM generiert wird. Es funktioniert gut, aber die Ausgabe auf einer Windows-Konsole ist verstümmelt.
Dann können wir die Codepage der Konsole auf 65001 (chcp 65001
) setzen, aber in diesem Fall funktionieren die .bat
Dateien nicht. Das heißt, wenn wir versuchen, unsere Anwendung über unser Skript (namens start.bat) zu starten, geschieht absolut nichts. Der Befehl einfache Rückgabe:
C:\Application> chcp 65001
Activated code page: 65001
C:\Application> start.bat
C:\Application>
Aber ohne chcp 65001
, gibt es kein Problem, und die Anwendung kann gestartet werden.
Irgendwelche Hinweise dazu?
Wie lautet die Textkodierung der Datei start.bat? – johnstok