Öffentlich API Änderungen in Aspose.Cells 8.0.0
MemorySetting zu LoadOptions & WorkbookSettings hinzugefügt
Ab v8.0.0 von Aspose.Cells for Java haben wir die Speichernutzungsoptionen aus Leistungsgründen bereitgestellt. Die Eigenschaft „MemorySetting“ ist jetzt in den Klassen „LoadOptions“ und „WorkbookSettings“ verfügbar.
Beispiel
Demonstriert, wie eine Excel-Datei (mit großer Größe) im optimierten Modus gelesen wird.
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);
Veranschaulicht, wie ein großes Dataset im optimierten Modus in ein Arbeitsblatt geschrieben wird.
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
//.........
Implementierungen von Zeile & Cell wurden geändert
In früheren Versionen wurden Row- und Cell-Objekte im Arbeitsspeicher gehalten, um entsprechende Zeilen und Zellen in einem Arbeitsblatt darzustellen. Es wurde immer dieselbe Instanz zurückgegebenRowCollection[int index] oderCells[int-Zeile, int-Spalte] wurden abgerufen. Aus Gründen der Speicherleistung werden ab sofort nur noch die Eigenschaften und Daten von Row und Cell im Speicher gehalten. Daher wurde das Objekt Row & Cell zum Wrapper der oben genannten Eigenschaften.
Beispiel
Demonstriert, wie von nun an die Objekte Cell und Row verglichen werden.
Java
//..
row1.equals(row2);
cell1.equals(cell2);
//..
Da die Row- und Cell-Objekte gemäß dem Aufruf instanziiert werden, werden sie nicht von der Cells-Komponente im Arbeitsspeicher gehalten und verwaltet. Daher werden nach einigen Einfüge- und Löschvorgängen die Zeilen- und Spaltenindizes möglicherweise nicht aktualisiert oder noch schlimmer, diese Objekte werden ungültig.
Beispiel
Beispielsweise gibt das folgende Code-Snippet mit 8.0.0 und höher ungültige Ergebnisse zurück.
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());
Mit der neuen Version wird das Objekt Cell ungültig oder verweist mit einem unerwünschten Wert auf A2. Um eine solche Situation zu vermeiden, rufen Sie die Row- oder Cell-Objekte erneut aus der Cells-Sammlung ab, um das korrekte Ergebnis abzurufen.
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-Verhalten geändert
In früheren Versionen spezielles Muster_wurde beim Formatieren von Zellenwerten ignoriert, wobei das Sonderzeichen * immer ein Zeichen im formatierten Ergebnis erzeugte. Ab dieser Version haben wir die Logik geändert, um Sonderzeichen zu behandeln_ und* um das formatierte Ergebnis gleich wie bei der Excel-Anwendung zu machen. Das benutzerdefinierte Zellenformat „_($* #,##0.00_)" verwendet, um den Wert 123 darzustellen, erzeugte das Ergebnis als “$ 123,00”. In neuen Versionen enthält Cell.StringValue das Ergebnis als “$ 123,00”, was das gleiche Verhalten ist, das die Excel-Anwendung beim Kopieren der Zelle zeigt per SMS oder Export an CSV.
CreatedTime zu PdfSaveOptions hinzugefügt
Jetzt können Benutzer die Erstellungszeit PDF abrufen oder festlegen, während sie die Tabelle unter Verwendung der PdfSaveOptions-Klasse auf PDF speichern.
ShowFormulas zum Arbeitsblatt hinzugefügt
Von nun an können Benutzer die von Worksheet angebotene boolesche Eigenschaft ShowFormulas verwenden, um die Ansicht zwischen Formel und Wert eines bestimmten Arbeitsblatts umzuschalten.
Ooxml zu FileFormatType hinzugefügt
Der FileFormatType-Klasse wurde eine neue Konstante Ooxml hinzugefügt, um die verschlüsselte Office Open XML-Datei darzustellen, z. B. XLSX, DOCX, PPTX und mehr.
Veraltete FilterColumnCollection von AutoFilter
Mit Aspose.Cells for Java wurde die Methode getFilterColumnCollection als veraltet markiert. Es wird empfohlen, stattdessen die Methode AuotFilter.getFilterColumns zu verwenden.
SeriesCollection.SecondCatergoryData durch SeriesCollection.SecondCategoryData ersetzt
Wir haben den Tippfehler im Methodennamen für SeriesCollection.getSecondCatergoryData grundsätzlich korrigiert. Sie können die Methode SeriesCollection.getSecondCategoryData jetzt weiter verwenden, während die ursprüngliche Methode SeriesCollection.getSecondCatergoryData als veraltet markiert wurde.