此代码是对象的一部分,每个对象应将其位置写入accountstorage.txt,但它只写入第一个对象的位置,即使我设置追加为true
accountstorage = new File(currDir + "/Clients/accountstorage.txt");
try {
if(!accountstorage.exists()) {
accountstorage.getParentFile().mkdirs();
accountstorage.createNewFile();
} else {
return;
}
fos = new FileOutputStream(accountstorage, true);
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(fos));
bw.write("@" + accountfile.getParentFile() + "\r\n");
bw.flush();
bw.close();
是什么导致这个?我似乎无法自己找到这个问题。
答案 0 :(得分:1)
因为你的条件阻止
if(!accountstorage.exists()) {
accountstorage.getParentFile().mkdirs();
accountstorage.createNewFile();
} else {
return; // DUE to this... Remove else block to fix.
}
当你的文件不存在时,它会创建它并写下这个位置,但是当你的文件存在时,它会返回并且不会写任何东西。
希望这有帮助。