Ich fusionierte haben zwei Excel-Dateien den Code mit specied hierPOI Excel Merging "Reparierte Datensätze: Format von /xl/styles.xml Teil (Styles)" Verursachung
http://www.coderanch.com/t/614715/Web-Services/java/merge-excel-files
dieses der Block die Stile Anwendung für meine Zellen verbinden
if (styleMap != null)
{
if (oldCell.getSheet().getWorkbook() == newCell.getSheet().getWorkbook())
{
newCell.setCellStyle(oldCell.getCellStyle());
}
else
{
int stHashCode = oldCell.getCellStyle().hashCode();
XSSFCellStyle newCellStyle = styleMap.get(stHashCode);
if (newCellStyle == null)
{
newCellStyle = newCell.getSheet().getWorkbook().createCellStyle();
newCellStyle.cloneStyleFrom(oldCell.getCellStyle());
styleMap.put(stHashCode, newCellStyle);
}
newCell.setCellStyle(newCellStyle);
}
}
alles gut funktioniert wie erwartet und werde meinen XSSFWorkbook zu generieren.
Problem beginnt, wenn ich versuche, es zu öffnen:
ich unten Fehler sehen
und mein Bericht enthält unter
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<recoveryLog xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main">
<logFileName>error072840_01.xml</logFileName>
<summary>Errors were detected in file 'XYZ.xlsx'</summary>
<repairedRecords summary="Following is a list of repairs:">
<repairedRecord>Repaired Records: Format from /xl/styles.xml part (Styles)</repairedRecord>
</repairedRecords>
</recoveryLog>
Nachdem diese alle meine Blatt öffnet gut, aber ohne Stile. Ich weiß, dass es eine Begrenzung für die Anzahl der zu erstellenden Stile gibt, und zähle die Stile, die erstellt werden, und ich sehe kaum 4 erstellt. Ich weiß sogar, dass dieses Problem mit zu vielen Stilen verbunden ist.
Leider hat POI Unterstützung nur HSSFWorkbook (Apache POI delete CellStyle from workbook)
Jede Hilfe in optimieren, wie dieses Problem zu mildern wird groß sein.
Haben Sie sichergestellt, dass Sie die neueste Version verwenden? (3.11 Beta 2 zum Schreiben) – Gagravarr
Ja, ich habe versucht, 3.11 Beta 2 und immer noch sehe ich das gleiche Problem. Früher war ich auf 3.9 obwohl – Shiv