伙计们。我正在尝试从堆栈中写入文件。堆栈是通过从另一个文件中读取来创建的。我正在使用堆栈,以便可以反转我读入的文件。要读取和写入的文件名来自命令行。这就是我实现堆栈的方式:
while(read.hasNext()) {
stack.push(read.next());}
堆栈应该写入的我的另一个文件的代码:
FileWriter w = null;
try {
w = new FileWriter(new File(args[1]));
} catch (IOException e) {
e.printStackTrace();
}
if (!stack.isEmpty()) { //this was a while statement
try {
w.write(stack.pop());
} catch (IOException e) {
e.printStackTrace();
}
} else {
System.out.println("Didn't make it.");
}
我遇到的问题是当我运行我的程序时,创建了我要写入的文件,但没有写入文件。我最初认为我的堆栈中没有任何内容(这就是为什么我将 while 语句更改为 if;它是临时的)。“没有成功”。没有打印,所以我现在知道不是那样的。我在这里做错了什么?任何帮助表示赞赏。