Java OutputStreamWriterを使用して文字コードを指定してファイル出力する
環境
Java SE 1.8
Eclipse 4.14
書式
1.new BufferedWriter(new OutputStreamWriter(new FileOutputStream(ファイルパス), 文字コード)));
文字コードと改行コードを指定してファイルに書き込みます
2.BufferedWriter(Writer out)
デフォルト・サイズの出力バッファでバッファリングされた、文字型出力ストリームを作成します。
使用例
package com.arkgame.study; import java.io.BufferedWriter; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStreamWriter; import java.io.PrintWriter; public class AkrEncodeDemo { // ファイルパス変数の宣言 private static final String FILE_PATH = "C:\\tmp\\resultC.txt"; // 文字コード private static final String CHARSET = "UTF-8"; // 改行コード定義 private static final String BR = "\n"; public static void main(String[] args) throws IOException { // ファイルに出力する文字列 String name = "東京 "; String name2 = "太郎 "; // FileOutputStreamで文字コード・改行コードを指定(UTF-8,\n) PrintWriter pw = new PrintWriter( new BufferedWriter(new OutputStreamWriter(new FileOutputStream(FILE_PATH), CHARSET))); pw.print(name + BR + name2); pw.close(); } }
実行結果
「c:\tmp\resultC.txt」に下記内容を書き込みます。文字コードがUTF-8です。
東京
太郎