我是 java 的初学者,并为后缀评估编写了以下问题。虽然该程序适用于控制台 IO。使用文件时有问题。我试图在文件中获取程序的答案output00.txt
,但文件为空。这是代码。我省略了与这个问题无关的方法。
public static void main(String[] args) throws Exception {
FileReader input = new FileReader("input00.txt");
BufferedReader in = new BufferedReader(input) ;
FileWriter output = new FileWriter("output00.txt");
BufferedWriter out = new BufferedWriter(output);
while (true) {
String lineReader = in.readLine();
if (lineReader==null) {
break;
}
Stack<String> m_Stack = new Stack<String>();
m_Stack.addAll(Arrays.asList(lineReader.trim().split("[ \t]+")));
if (m_Stack.peek().equals("")){
continue;
}
try {
double finVal = evaluateRPN(m_Stack);
if (!m_Stack.empty()) {
throw new Exception();
}
out.write(finVal + "\n");
}
catch (Exception e) {System.out.println("error");}
}
}
文件 input00.txt 包含
8 9 +
7 6 -
7 7 * 9 -