「テキストファイルを一行ずつ読み込む」の編集履歴(バックアップ)一覧はこちら
「テキストファイルを一行ずつ読み込む」(2017/06/30 (金) 03:07:18) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
とりあえずtextのデータを一行づつ読み込んで表示するプログラム
**準備
-作ったプロジェクトにresourcesフォルダを作る
-なんか適当な文字列が入ったtext.txtを作り作ったフォルダに入れる
**注意点
- ファイルのパスの指定はプロジェクトのファイルからの相対パスで指定してある。
-あと大量のデータを読み込むとかならこのやり方は非推奨
#image(https://img.atwikiimg.com/www65.atwiki.jp/kindaidensan/attach/50/48/iotest.PNG)
#highlight(linenumber,java){
package fileIO;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
public class FileReaderTest {
public static void main(String args[]){
ArrayList<String> list= new ArrayList<>();//arraylistの初期化
try {
FileReader fl = new FileReader("resources/text.txt");//
//BurrferdeReaderを使って一文字ずつ読み込む
BufferedReader br = new BufferedReader(fl);
String str = br.readLine();
while(null!=str){
list.add(str);
str=br.readLine();
}
} catch(FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
//結果出力
list.stream().forEach(s->System.out.println(s));
}
}
}
**解説
- 途中のtry{} catch{}は例外処理という奴でとりあえずここではtryの中だけが実行されてもしもし16行目でファイルのパスが間違えていれば26行目の catch(FileNotFoundExcept){-----}の部分が実行されます。
-33行目はラムダとstreamapi組み合わせた記述だけど要するに
#highlight(linenumber,java){
for(String str :list)
System.out.println(str);
}
とりあえずtextのデータを一行づつ読み込んで表示するプログラム
**準備
-作ったプロジェクトにresourcesフォルダを作る
-なんか適当な文字列が入ったtext.txtを作り作ったフォルダに入れる
**注意点
- ファイルのパスの指定はプロジェクトのファイルからの相対パスで指定してある。
-あと大量のデータを読み込むとかならこのやり方は非推奨
#image(https://img.atwikiimg.com/www65.atwiki.jp/kindaidensan/attach/50/48/iotest.PNG)
#highlight(linenumber,java){
package fileIO;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.ArrayList;
public class FileReaderTest {
public static void main(String args[]){
ArrayList<String> list= new ArrayList<>();//arraylistの初期化
try {
FileReader fl = new FileReader("resources/text.txt");//
//BurrferdeReaderを使って一文字ずつ読み込む
BufferedReader br = new BufferedReader(fl);
String str = br.readLine();
while(null!=str){
list.add(str);
str=br.readLine();
}
} catch(FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
//結果出力
list.stream().forEach(s->System.out.println(s));
}
}
}
**解説
- 途中のtry{} catch{}は例外処理という奴でとりあえずここではtryの中だけが実行されてもしもし16行目でファイルのパスが間違えていれば26行目の catch(FileNotFoundExcept){-----}の部分が実行されます。
-33行目はラムダとstreamapi組み合わせた記述だけど要するに下のfor文と同じ
#highlight(linenumber,java){
for(String str :list)
System.out.println(str);
}