今回は、プライベートメソッドです。
プライベートメソッドを使って、コードを整理しましょう。
■動画はこちら
■Youtube版の解説で使用しているソースコード
動画と一緒にこちらも参考にどうぞ。
※例題のため、少し細かく分割しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 | import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStreamReader; import java.io.OutputStreamWriter; public class TextReadAndWriter { //ファイルの読み込みに必要なクラスの定義 private FileInputStream fis = null; private InputStreamReader isr = null; private BufferedReader br = null; //ファイルの書き込みに必要なクラスの定義 private FileOutputStream fos = null; private OutputStreamWriter osw = null; private BufferedWriter bw = null; public void execute() { try { //ファイルを開く openFile(); //テキストを読み込み、書き出す readAndWrite(); } catch (Exception e) { //例外が発生した場合は、読込、または、書出し失敗のメッセージを表示 System.out.println("ファイルの読み込み、または、書き出しに失敗しました。"); } finally { //ファイルを閉じる close(); } } private void openFile() throws Exception { //ファイルの読み込み準備 openSourceFile(); //ファイルの書き込み準備 openDestinationFile(); } private void openSourceFile() throws Exception { //ファイルの読み込み準備 fis = new FileInputStream("d:\\work\\input.txt"); isr = new InputStreamReader(fis); br = new BufferedReader(isr); } private void openDestinationFile() throws Exception { //ファイルの書き込み準備 fos = new FileOutputStream("d:\\work\\output.txt"); osw = new OutputStreamWriter(fos); bw = new BufferedWriter(osw); } private void readAndWrite() throws Exception { //最初の1行目を読み込む String line = br.readLine(); //行のデータが無くなるまで、繰り返す while( line != null ) { //行の内容を書き込んで、改行コードを追加 bw.write(line); bw.newLine(); //次の行を読み込む line = br.readLine(); } } private void close() { //読み込んだファイルを閉じる closeSourceFile(); //書き出したファイルを閉じる closeDestinationFile(); } private void closeSourceFile() { try { //読み込んだファイルを閉じる br.close(); } catch(Exception e) { } } private void closeDestinationFile() { try { //すべてファイルへ吐き出す bw.flush(); } catch(Exception e) { } try { //書き込んだファイルを閉じる bw.close(); } catch(Exception e) { } } } |
1 2 3 4 5 6 7 8 9 10 | public class TextReadAndWriterEntry { public static void main(String[] args) { TextReadAndWriter trw = new TextReadAndWriter(); trw.execute(); } } |