Ich führe ein Java-Programm unter Mac OS X 10.8 (vom Terminal aus) aus und die Java- file.encoding
VMs verwenden standardmäßig "SJIS". Ich habe sogar ein winziges Java-Programm ausprobiert, das nichts anderes tut, als die Systemeigenschaften auszudrucken, und das zeigt, dass die Java-VM selbst standardmäßig SJIS verwendet. (Und seien wir ehrlich, niemand mag SJIS!)
Mein Terminal ist auf UTF-8 eingestellt. Mein $ LANG ist nicht gesetzt und $ LC_CTYPE ist "UTF-8". Keine Umgebungsvariable oder Terminaleinstellung enthält "JIS", AFAICT.
Woher bezieht Java unter Mac OS X den file.encoding
Wert? Gibt es eine Systemeinstellung, die ich ändern kann, damit UTF-8 verwendet wird? Ich möchte diese Angaben nicht pro Anwendung und pro Bibliothek machen müssen, da sie je nach Programm zwischen "umständlich" und "unmöglich" liegen.
Ich nehme an, dass ich eine Umgebungsvariable dafür festlegen kann, aber ich kann keine Standardvariablen (wie $ LANG) finden, die Java betreffen.