ファイル(sample.txt)を読み出し, テキストビューに表示する.
- openFileInputメソッドの引数にファイル名を指定して, FileInputStreamインスタンスを取得する.
- BufferedReaderの内部にInputStreamWriterをラップしたBufferedReaderオブジェクトを生成する. BufferReaderを使用しなくてもファイルの読み込みは行えるが, readメソッドやreadLineメソッドが呼ばれるたびにファイルにアクセスするので効率がよくない.
- readLineメソッドで1行読み出す.
- closeメソッドでクローズする.
package com.moonlight_aska.android.fileread01;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import android.widget.TextView;
public class FireRead01 extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
final Context context = this;
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView text = (TextView)findViewById(R.id.textview_id);
BufferedReader in = null;
try {
FileInputStream file = context.openFileInput("sample.txt");
in = new BufferedReader(new InputStreamReader(file));
text.setText(in.readLine());
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}