お世話になります。
Android Studioを使用してアプリ開発の勉強をしているのですが、ファイルI/Oで困っています。
<環境>
OS:Windows 10
Java:java version "1.8.0_271"
開発ツール:Android Studio 4.0.1
<やりたいこと>
1.独自で用意したCSVファイルを読み込む
2.編集(変更、行の追加、削除)の後、同じファイルに上書きする
<ファイルパス>
assetsフォルダにあるfoodstuff.csv
1.については実現できました。
問題は2なのですが、FileOutputStreamを使用しており、特にエラーも出ないのですが
ファイルは更新されませんでした。もしかして別の場所に新規ファイルとして保存されたのかと思ったのですが、
プロジェクトフォルダ内を検索しても出てきませんでした(そもそもデフォルトの保存場所が分かりません)。
お手数ですがご教示ください。
: : static String fileName = "foodstuff.vsv"; : : public int writeCsvFile(Context context, String fileName, ArrayList<ArrayList<String>> array ) { int cnt; cnt = array.size(); Log.d("debug","要素数 " + cnt); try { FileOutputStream fo = context.openFileOutput(fileName, Context.MODE_PRIVATE); for (int i = 0; i < cnt; i++) { String str; str = array.get(i).get(0); str = str + COMMA; str = str + array.get(i).get(1); str = str + NEW_LINE; fo.write(str.getBytes()); } fo.close(); } catch (Exception e) { e.printStackTrace(); } return cnt; }
回答3件
あなたの回答
tips
プレビュー