【发布时间】:2014-02-28 12:26:04
【问题描述】:
我有一个存储在 ArrayList 中的一些命令的列表,我一直在尝试将此列表打印在一个文本文件中。下面是代码-
try {
FileWriter writer = new FileWriter("Commands.txt");
for(String str: commandArray){
writer.write(commandArray[i]);
}
}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
我没有收到任何错误,但文件也没有创建。是不是我做错了什么。任何帮助表示赞赏。非常感谢。
编辑问题
@Sajal Dutta,我听取了您的建议并提出了以下建议;
try {
for(String str: movementArray){
File file = new File("D://filename.txt");
// if file doesnt exists, then create it
if (!file.exists()) {
file.createNewFile();
}
FileWriter fw = new FileWriter(file.getAbsoluteFile());
BufferedWriter bw = new BufferedWriter(fw);
bw.write(str);
bw.close();
}
}
catch (IOException e) {
e.printStackTrace();
}
在创建文件的那一刻,但只有来自 arraylist 的最后一个值被打印到文件中。数组列表中存储了六个值,如何将所有六个值都打印出来?
【问题讨论】:
-
我没有看到任何拼写错误。你在干嘛?
-
您的 for each 循环非常有趣。无法理解它是如何工作的。
-
我从@Sajal 那里得到了这个想法。我自己并不完全理解它,但它似乎只是部分起作用。只有我的 arraylist 中的最后一个元素被打印出来,与整个列表相反。如果您想看一下,下面的 cmets 上有一个指向他的答案的链接。
标签: java arraylist filewriter