2

私はjexcelapiを初めて使用しますが、数式をまだ正常に追加していません。

数式をコンパイルしようとすると、コンパイルエラーが発生します。

Exception in thread "main" java.util.EmptyStackException
     at java.util.Stack.peek(Stack.java:102)
     at java.util.Stack.pop(Stack.java:84)
     at jxl.biff.formula.BinaryOperator.getOperands(BinaryOperator.java:61)
     at jxl.biff.formula.StringFormulaParser.parseCurrent(StringFormulaParser.java:240)
     at jxl.biff.formula.StringFormulaParser.parse(StringFormulaParser.java:113)
     at jxl.biff.formula.FormulaParser.parse(FormulaParser.java:161)
     at jxl.write.biff.FormulaRecord.initialize(FormulaRecord.java:160)
     at jxl.write.biff.FormulaRecord.setCellDetails(FormulaRecord.java:243)
     at jxl.write.biff.WritableSheetImpl.addCell(WritableSheetImpl.java:1199)

addCellがから呼び出されている場合

Formula formula;
formula = new Formula(column, row, string, arial);
sheet.addCell(formula);

明らかな間違いがあるかどうか、およびスプレッドシートに数式を適切に追加するために実行できる手順を教えてください。

4

2 に答える 2

5

同じ問題に直面しました。問題は、式の前に「=」を付けていて、それを削除しただけで、エラーなしで機能していることでした。

于 2012-09-17T08:05:52.403 に答える
-1
/**
 * Looks at the object at the top of this stack without removing it
 * from the stack.
 *
 * @return     the object at the top of this stack (the last item
 *             of the <tt>Vector</tt> object).
 * @exception  EmptyStackException  if this stack is empty.
 */
public synchronized E peek() {
int len = size();

if (len == 0)
    throw new EmptyStackException();
return elementAt(len - 1);
}

したがって、発生するエラーはNullPointerExceptionに似ていますが、スタックが空であるため、スタックから何も覗くことができないという違いがあります。

それはあなたに何か問題があることを示唆している可能性がありますstring

これは、数式の作成についても説明しているチュートリアルhttp://www.java-tips.org/other-api-tips/jexcel/how-to-create-an-excel-file.htmlです。

そしてここにもう1つあります:http://r4r.co.in/java/apis/jexcel/basic/example/jexcel_basic_examples.php?id = 774&option = Jexcel%20Example

于 2012-08-19T22:59:27.290 に答える