Javaのファイル入出力
いつも忘れてしまうのでJavaのファイル入出力についてメモ(参考 http://www.hellohiro.com/fileio.htm)。ログを作るときはログ出力のライブラリを使うんだけど、素朴なテキストの入出力ってほとんどやらないからなあ。
出力側
BufferedWriter bw = new BufferedWriter(new FileWriter(filename)); String msg = "出力する文字"; bw.write(msg); bw.newLine(); bw.close();
入力側
BufferedReader br = new BufferedReader(new FileReader(filename)); String message = br.readLine(); br.close();
こんな感じ?
文字コードも自分で決めたければ、File(Reader|Writer)のかわりに、
FileOutputStream fos = new FileOutputStream(filename); OutputStreamWriter osw = new OutputStreamWriter(fos , "MS932"); BufferedWriter bw = new BufferedWriter(osw);
FileInputStream fis = new FileInputStream(filename); InputStreamReader ir = new InputStreamReader(fis , "MS932"); BufferedReader br = new BufferedReader(ir);
これでいいのかなあ。Javaはクラスが多すぎてどれが正解なんだかよくわからん。