私は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 -