テキストファイルを一行ずつ読み込む

とりあえずtextのデータを一行づつ読み込んで表示するプログラム

準備

  • 作ったプロジェクトにresourcesフォルダを作る
  • なんか適当な文字列が入ったtext.txtを作り作ったフォルダに入れる

注意点

  • ファイルのパスの指定はプロジェクトのファイルからの相対パスで指定してある。
  • あと大量のデータを読み込むとかならこのやり方は非推奨



  1. package fileIO;
  2. import java.io.BufferedReader;
  3. import java.io.FileNotFoundException;
  4. import java.io.FileReader;
  5. import java.io.IOException;
  6. import java.util.ArrayList;
  7.  
  8.  
  9. public class FileReaderTest {
  10.  
  11. public static void main(String args[]){
  12.  
  13. ArrayList<String> list= new ArrayList<>();//arraylistの初期化
  14.  
  15. try {
  16. FileReader fl = new FileReader("resources/text.txt");//
  17. //BurrferdeReaderを使って一文字ずつ読み込む
  18. String str = br.readLine();
  19.  
  20. while(null!=str){
  21. list.add(str);
  22. str=br.readLine();
  23. }
  24.  
  25. } catch(FileNotFoundException e) {
  26. e.printStackTrace();
  27. } catch (IOException e) {
  28. e.printStackTrace();
  29. }
  30.  
  31. //結果出力
  32. list.stream().forEach(s->System.out.println(s));
  33. }
  34.  
  35.  
}

解説

  • 途中のtry{} catch{}は例外処理という奴でとりあえずここではtryの中だけが実行されてもしもし16行目でファイルのパスが間違えていれば26行目の catch(FileNotFoundExcept){-----}の部分が実行されます。
  • 33行目はラムダとstreamapi組み合わせた記述だけど要するに下のfor文と同じ
  1. for(String str :list)
  2. System.out.println(str);
  3.  
最終更新:2017年06月30日 03:07
添付ファイル