PrintWriter
にUTF-8を書き込む方法を教えてください。PrintWriterにUTF-8を書き込ませるには?
pstream = new PrintWriter(new OutputStreamWriter(
csocket.getOutputStream(), StandardCharsets.UTF_8), true)
PrintWriter
にUTF-8を書き込む方法を教えてください。PrintWriterにUTF-8を書き込ませるには?
pstream = new PrintWriter(new OutputStreamWriter(
csocket.getOutputStream(), StandardCharsets.UTF_8), true)
はOutputStreamWriter
を使用してください。
すばやく:-Dfile.encoding = utf8ディスカッションで提案されているJVMのパラメータまたはメソッド(2番目の回答を参照)。そうでない場合は、プラットフォームのデフォルトの文字セットが使用さ
ルックJava: Difference between PrintStream and PrintWriter議論で:
pstream = new PrintWriter(csocket.getOutputStream(), true);
String res = "some string";
pstream.println(res); // here I want to output string as UTF-8
あなただけの任意の文字セットのファイルに書き込むことができますが、doc
PrintWriter out1 = null;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
out1 = new PrintWriter(new OutputStreamWriter(socket.getOutputStream(), StandardCharsets.UTF_8),true);
} else {
out1 = new PrintWriter(new OutputStreamWriter(socket.getOutputStream(), "UTF8"), true);
}
は、ユーザーのPrintWriterないでください参照してください。 UTF-8エンコーディングが必要な場合は、直接OutputStreamに書き込んでください。
csocket.getOutputStream().write(res.getBytes("UTF-8"));
質問はアンドロイドとは関係ありません。 –