我可以在main方法中将ArrayList添加到文本文件中。但是当我尝试创建一个构造函数,该构造函数具有一个接受ArrayList的方法并将其添加到给构造函数的文本文件中。我得到了所有类型的错误。有人可以给我一个关于我可能做错的建议吗谢谢你我是java新手所以请不要大话。
public class RXTWriter {
private String filename;
public RXTWriter(String afilename) {
filename = afilename;
}
public void addtext(ArrayList<String> line) throws IOException {
File file = new File(filename);
if (!file.exists()) {
file.createNewFile();
}
FileWriter momo = new FileWriter(file.getAbsoluteFile());
BufferedWriter xoxo = new BufferedWriter(momo);
for (int k = 0; k < line.size(); k++) {
xoxo.write(line.get(k) + "\n");
xoxo.close();
System.out.println("Data saved.");
}
}
}
答案 0 :(得分:1)
在for循环中,您编写第一行并在此之后关闭它,因此您将失去与文件的连接
for (int k = 0; k < line.size(); k++) {
xoxo.write(line.get(k) + "\n");
xoxo.close();
System.out.println("Data saved.");
}
似乎你想要这样的东西
for (int k = 0; k < line.size(); k++) {
xoxo.write(line.get(k) + "\n");
}
xoxo.close();
System.out.println("Data saved.");