Java OutputStreamWriterを使用して文字コードを指定してファイル出力する

環境
Java SE 1.8
Eclipse 4.14

書式
1.new BufferedWriter(new OutputStreamWriter(new FileOutputStream(ファイルパス), 文字コード)));
文字コードと改行コードを指定してファイルに書き込みます
2.BufferedWriter(Writer out)
デフォルト・サイズの出力バッファでバッファリングされた、文字型出力ストリームを作成します。

使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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();
}
}
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(); } }
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です。
東京
太郎

Java

Posted by arkgame