私は内部ストレージにテキストファイルを書き込もうとしていますが、それを行うには何が最善の方法だろうと思っています。テキストファイルには文字列が含まれています。テキストファイルを内部ストレージに書き込む最も良い方法は?
私が持っている:
File file = new File(getFilesDir() + subFolderName + "/" + fileName);
BufferedWriter writer;
try {
writer = new BufferedWriter(new FileWriter(file));
writer.write("ID, Date, Address, Body");
writer.write("\n");
for (String s : list) {
writer.write(s);
writer.write("\n");
}
writer.write("\n");
writer.flush();
writer.close();
} catch (IOException e) {
e.printStackTrace();
}
私はちょうど新しいファイルの作成時にjava.lang.NullPointerException
取得:事前に/
感謝を。
これは私がそれを望んでいたように働いていると私は終わったコードです:私は(まだencriptedする必要があるユーザーとパスワードの情報を保存するために、このメソッドを持っていましたが、あなたができる
public void WriteFileInternal(ArrayList<String> list, String FileName, Context context) {
BufferedWriter bw;
try {
ContextWrapper cw = new ContextWrapper(context);
File directory = cw.getDir("SMSMonitor", Context.MODE_PRIVATE);
if (!directory.exists()){
directory.createNewFile();
directory.mkdir();
}
File file = new File(directory +"/"+ FileName);
file.createNewFile();
bw = new BufferedWriter(new FileWriter(file));
bw.write("ID, Date, Body, Phone Number");
bw.write("\n");
for (String s1 : list) {
bw.write(s1);
bw.write("\n");
}
bw.write("\n");
bw.flush();
bw.close();
} catch (Exception e) {
e.printStackTrace();
}
}
は 'getFilesDir()'、 'subFolderName'とは'設定filename'されています)の基礎としてそれを使うのか? – Bobby
getFilesDir()は設定されていません。アクティビティを拡張しないクラスからどのように設定しますか? – Houlahan
オリジナルの投稿を更新しました – Houlahan