1

jxlを使用してExcelファイルを作成しています。2012 年 3 月 22 日 (1 枚目のシート)、2012 年 3 月 23 日 (2 枚目のシート) などの日付でシートに名前を付けたいと思います。ここでは、ファイルと最初のシートを作成しています (これは 1 回だけ実行されます)。

    File file = new File(inputFile);
    WorkbookSettings wbSettings = new WorkbookSettings();
    wbSettings.setLocale(new Locale("en", "EN"));

    Date now = Calendar.getInstance().getTime();
    DateFormat df = new SimpleDateFormat("MM-dd-yyyy");
    String theDate = df.format(now);
    System.out.println(theDate);

    WritableWorkbook workbook = Workbook.createWorkbook(file, wbSettings);
    workbook.createSheet(theDate, 0);
    // now access it and do some operations
    WritableSheet excelSheet = workbook.getSheet(theDate);
    prepareSheet(excelSheet);
    workbook.write();
    workbook.close();

ここで、ファイルにアクセスして後で変更するとき (別のクラス - データを追加するたびに実行)、「まだ今日かどうか」を確認する必要があります。つまり、最後のシートの名前が 22-03-2012 で、今日が 22-03-2012 の場合 -> このシートにアクセスして変更し、最後のシートの名前が現在の日付と異なる場合 ->新しいシート。これは単純な「if」ステートメントの問題だと思いますが、何らかの理由で機能しません。新鮮な目が必要です:)ありがとう

4

1 に答える 1

0

次のメソッドを使用して特定のシートを取得します。null の場合は、新しいものを作成します。

Sheet getSheet(String name)
于 2012-03-22T13:55:43.767 に答える