Staramy się używać Java i UTF-8 w systemie Windows. Aplikacja zapisuje logi na konsoli i chcielibyśmy używać UTF-8 do logów, ponieważ nasza aplikacja ma umiędzynarodowione logi.Java, UTF-8 i Windows konsola
Możliwe jest skonfigurowanie maszyny JVM tak, aby generowała kodowanie UTF-8, używając -Dfile.encoding=UTF-8
jako argumentów dla maszyny JVM. Działa dobrze, ale dane wyjściowe na konsoli systemu Windows są zniekształcone.
Następnie możemy ustawić stronę kodową konsoli na 65001 (chcp 65001
), ale w tym przypadku pliki .bat
nie działają. Oznacza to, że gdy próbujemy uruchomić naszą aplikację za pomocą naszego skryptu (o nazwie start.bat), absolutnie nic się nie dzieje. Komenda proste zwroty:
C:\Application> chcp 65001
Activated code page: 65001
C:\Application> start.bat
C:\Application>
Ale bez chcp 65001
, nie ma problemu, a aplikacja może być uruchomiona.
Jakieś wskazówki na ten temat?
Co to jest kodowanie tekstowe pliku start.bat? – johnstok