うみたんのアトリエ

Android開発とかメモっておきたいこと記録していくの。

簡単なファイルの読み込み方法

Android開発におけるcsvファイルやtextファイルの読み込みを行う
メソッドを作りました。

先ほどの書き込み処理も利用しています。

ArrayList> bookmarks = new ArrayList>();

/**
* ファイルの読み込みを行う。
*/
private void readData() {
AssetManager assetManager = getResources().getAssets();

String fileList = null;
InputStream is = null;
BufferedReader br = null;

try {
// assets\csvフォルダの中のファイルリスト
fileList = assetManager.list("csv");
// ファイルが一つもなければ作成
if(fileList.length == 0){
List list = new ArrayList();
list.add("1,データ1");
list.add("2,データ2");
writeFile("test.csv", list);

// 読み込み処理省略
}

for (String file : fileList) {
is = assetManager.open("csv/" + file);
br = new BufferedReader(new InputStreamReader(is));
String str;
while ((str = br.readLine()) != null) {
String strs = str.split(",");
HashMap data = new HashMap();
data.put("name", strs[0]);
data.put("url", strs[1]);
bookmarks.add(data);

}
}
} catch (IOException e) {
Toast.makeText(this, "読み込み失敗", Toast.LENGTH_SHORT).show();
} finally {
// 終了処理
try {
if (br != null) {
br.close();
}
if (is != null) {
is.close();
}
} catch (Exception e) {
Toast.makeText(this, "Close処理失敗", Toast.LENGTH_SHORT).show();
}
}

}

素敵!