パブリック API Aspose.Cells 8.0.0 の変更点

LoadOptions & WorkbookSettings に MemorySetting を追加

Aspose.Cells for Java の v8.0.0 から、パフォーマンスを考慮してメモリ使用オプションを提供しています。 LoadOptions & WorkbookSettings クラスで MemorySetting プロパティを使用できるようになりました。

最適化モードで Excel ファイル (サイズが大きい) を読み取る方法を示します。

Java

 //Initialize LoadOptions

LoadOptions options = new LoadOptions();

//Set memory preferences

options.setMemorySetting(MemorySetting.MEMORY_PREFERENCE);

//Instantiate the Workbook with an object of LoadOptions

Workbook book = new Workbook(myDir + "large.xlsx", options);

最適化モードで大規模なデータセットをワークシートに書き込む方法を示します。

Java

 //Instantiate a new Workbook

Workbook book = new Workbook();

//Set the memory preferences for WorkbookSettings

book.getSettings().setMemorySetting(MemorySetting.MEMORY_PREFERENCE);

//Input large data into the cells

//.........

Row & Cell の実装が変更されました

以前のバージョンでは、Row オブジェクトと Cell オブジェクトは、ワークシートの対応する行とセルを表すためにメモリに保持されていました。常に同じインスタンスが返されました**RowCollection[int インデックス]またCells[整数行、整数列]**が取得されました。メモリのパフォーマンスを考慮して、これ以降、Row と Cell のプロパティとデータのみがメモリに保持されます。したがって、Row & Cell オブジェクトは、前述のプロパティのラッパーになります。

これから Cell と Row オブジェクトを比較する方法を示します。

Java

 //..

row1.equals(row2);


cell1.equals(cell2);

//..

Row オブジェクトと Cell オブジェクトは呼び出しに従ってインスタンス化されるため、Cells コンポーネントによってメモリ内に保持および管理されることはありません。したがって、いくつかの挿入および削除操作の後、行と列のインデックスが更新されないか、さらに悪いことに、これらのオブジェクトが無効になることがあります。

たとえば、次のコード スニペットは、8.0.0 以降を使用すると無効な結果を返します。

Java

 Cell cell = cells.get("A2");

System.out.println(cell.getName() + ":" + cell.getValue());

cells.insertRange(CellArea.createCellArea("A1", "A1"), ShiftType.DOWN);

System.out.println(cell.getName() + ":" + cell.getValue());

新しいバージョンでは、Cell オブジェクトが無効になるか、不要な値で A2 を参照します。このような状況を回避するには、セル コレクションから Row または Cell オブジェクトを再度取得して、正しい結果を取得します。

Java

 Cell cell = cells.get("A2");

System.out.println(cell.getName() + ":" + cell.getValue());

cells.insertRange(CellArea.createCellArea("A1", "A1"), ShiftType.DOWN);

//Fetch the cell reference again

Cell cell = cells.get("A3");

System.out.println(cell.getName() + ":" + cell.getValue());

Cell.StringValue の動作が変更されました

以前のバージョンでは、特殊なパターン_は、セル値の書式設定中に無視されました。特殊文字 * は、書式設定された結果に常に 1 文字を生成しました。このバージョンから、特殊文字を処理するロジックを変更しました_と書式設定された結果を Excel アプリケーションと同じにするため。たとえば、カスタム セル形式 “_($ #,##0.00_)” を使用して値 123 を表すと、結果は “$ 123.00” になります。新しいバージョンでは、Cell.StringValue に結果が “$123.00” として含まれます。これは、セルのコピー中に Excel アプリケーションが示す動作と同じです。テキストまたは CSV にエクスポートします。

CreatedTime を PdfSaveOptions に追加

ユーザーは、PdfSaveOptions クラスを使用してスプレッドシートを PDF に保存する際に、PDF の作成時刻を取得または設定できるようになりました。

ワークシートに ShowFormulas を追加

これ以降、ユーザーは Worksheet が提供する Boolean プロパティ ShowFormulas を使用して、特定のワークシートの数式と値の間でビューを切り替えることができます。

FileFormatType に Ooxml を追加

新しい定数 Ooxml が FileFormatType クラスに追加され、XLSX、DOCX、PPTX などの暗号化された Office オープン XML ファイルを表します。

AutoFilter の廃止された FilterColumnCollection

Aspose.Cells for Java により、getFilterColumnCollection メソッドは廃止されました。代わりに AuotFilter.getFilterColumns メソッドを使用することをお勧めします。

SeriesCollection.SecondCategoryData を SeriesCollection.SecondCategoryData に置き換えました

SeriesCollection.getSecondCatergoryData のメソッド名のタイプミスを基本的に修正しました。 SeriesCollection.getSecondCategoryData メソッドを今後使用できますが、元のメソッド SeriesCollection.getSecondCatergoryData は廃止されました。