1

jExcelAPI を使用して xls ファイルを読み込もうとすると、ライブラリが stderr に多くの情報をダンプすることがわかりました。この情報は関係ない場合があります。たとえば、次のコード スニペットにより、多くの「警告」が stderr ストリームにダンプされます。

    Workbook workbook = Workbook.getWorkbook(new File(flname));


    //For each sheet in the workbook
    for (int currentSheet = 0; currentSheet < workbook.getNumberOfSheets(); currentSheet++)
    {
        Sheet sheet = workbook.getSheet(currentSheet);
        System.out.println("Currently processing " + sheet.getName());
    }

警告は次のようなものです。

Currently processing frst sheet
Warning:  Cell C33680 already contains data
Warning:  Cell D33680 already contains data
Warning:  Cell E33680 already contains data
Warning:  Cell F33680 already contains data
Warning:  Cell B33680 already contains data
Currently processing Lst Sheet

ライブラリがこの不要なデータをすべてダンプしないようにするにはどうすればよいですか? また、シートの名前をリストするだけでコードがシートのすべてのセルを参照する理由もわかりません( Workbook.getSheetNames() が同様のタスクを実行できることは理解していますが、シートの名前とシート内の単一セルの内容を印刷したいとします)。

ライブラリの使い方が間違っていませんか?

4

1 に答える 1

1

私はこのライブラリを使用したことがありませんが、Logger.initializeLogger()を簡単に見てみると、デフォルトで Log4J を使用してログを記録しようとしているように見えます。CLASSPATH に Log4J がありますか? SLF4J ブリッジを使用することもできます。

JExcelAPI をロギング フレームワークに正常にリダイレクトすると、どのメッセージが (およびどこに) ダンプされるかを構成できます。

于 2011-10-22T16:28:50.803 に答える