SystemのProperty

Javaのコードの中で、MySQLのデータベースに接続するときにEUC_JPを指定しないと日本語が正常に扱えない(Linuxの場合)。どこかに何かを設定すれば、コードの中で文字コードを指定しなくてもいいのかもしれないけど、今のところまだその方法は分からない。
ということで、このままではWindowsLinuxで共通のコードではなくなってしまう。
Cだったら迷わず#ifdefを使ってしまうところだけど、Javaにはそういうのはないようだ。
OSに依存したコードを書こうとする方が悪いのか?


Java 入門 | 文字コード
ここによると、

System.out.println(System.getProperty("file.encoding"));

文字コードが分かるらしい。


WindowsとLinuxの両方で動作するコードを書く:JavaTips 〜Javaプログラミング編 - @IT
ここによると、System.getProperty()でOSの種類なんかも分かるらしい。


おお、実行したら結構いろいろ出てくる。OSとかパスとかユーザ名とかCPUのエンディアンとかも出てくる。
なんだ、こんな情報が取れるのか。これでソフトが作りやすくなった。


Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle
これを見ただけじゃこんな情報が取れるなんて分からなかったな。