jarファイル内にUnicode(BOMなしのUTF-8)テキストファイルがあります。これはリソースとしてロードされています。JarリソースのUnicode
URL resource = MyClass.class.getResource("datafile.csv");
InputStream stream = resource.openStream();
BufferedReader reader = new BufferedReader(
new InputStreamReader(stream, Charset.forName("UTF-8")));
これはWindowsでもうまくいきますが、Linuxではファイルを正しく読み取っていないように見えます。アクセント付きの文字が壊れています。私は、異なるマシンが異なるデフォルトの文字セットを持つことができることを認識していますが、正しい文字セットを与えています。なぜそれを使用していないでしょうか?
を作成する必要がありますキャラクターは壊れていますか?例えば、 'System.out'は壊れています。 –
データは、UTF-8で書かれたWebページとして配信されます。 HTTPヘッダー、XMLヘッダー、HTTP-equivメタはすべてUTF-8といい、ブラウザーはこれを確認します。 –