</release>
-->
<release version="3.5.1-beta2" date="2008-08-20">
+ <action dev="POI-DEVELOPERS" type="fix">45676 - Handle very long cells in the XSSF EventUserModel example</action>
<action dev="POI-DEVELOPERS" type="add">Initial ExtractorFactory support for building TextExtractors for embeded documents</action>
<action dev="POI-DEVELOPERS" type="add">Support stripping XSSF header and footer fields (eg page number) out of header and footer text if required</action>
<action dev="POI-DEVELOPERS" type="add">Add POIXMLPropertiesTextExtractor, which provides to the OOXML file formats a similar function to HPSF's HPSFPropertiesExtractor</action>
nextIsString = false;
}
}
+ // Clear contents cache
+ lastContents = "";
}
public void endElement(String uri, String localName, String name)
throws SAXException {
+ // Process the last contents as required.
+ // Do now, as characters() may be called more than once
+ if(nextIsString) {
+ int idx = Integer.parseInt(lastContents);
+ lastContents = sst.getSharedStringAt(idx);
+ }
+
// v => contents of a cell
// Output after we've seen the string contents
if(name.equals("v")) {
public void characters(char[] ch, int start, int length)
throws SAXException {
- lastContents = new String(ch, start, length);
- if(nextIsString) {
- int idx = Integer.parseInt(lastContents);
- lastContents = sst.getSharedStringAt(idx);
- }
+ lastContents += new String(ch, start, length);
}
}
</release>
-->
<release version="3.5.1-beta2" date="2008-08-20">
+ <action dev="POI-DEVELOPERS" type="fix">45676 - Handle very long cells in the XSSF EventUserModel example</action>
<action dev="POI-DEVELOPERS" type="add">Initial ExtractorFactory support for building TextExtractors for embeded documents</action>
<action dev="POI-DEVELOPERS" type="add">Support stripping XSSF header and footer fields (eg page number) out of header and footer text if required</action>
<action dev="POI-DEVELOPERS" type="add">Add POIXMLPropertiesTextExtractor, which provides to the OOXML file formats a similar function to HPSF's HPSFPropertiesExtractor</action>
nextIsString = false;
}
}
+ // Clear contents cache
+ lastContents = "";
}
public void endElement(String uri, String localName, String name)
throws SAXException {
+ // Process the last contents as required.
+ // Do now, as characters() may be called more than once
+ if(nextIsString) {
+ int idx = Integer.parseInt(lastContents);
+ lastContents = sst.getSharedStringAt(idx);
+ }
+
// v => contents of a cell
// Output after we've seen the string contents
if(name.equals("v")) {
public void characters(char[] ch, int start, int length)
throws SAXException {
- lastContents = new String(ch, start, length);
- if(nextIsString) {
- int idx = Integer.parseInt(lastContents);
- lastContents = sst.getSharedStringAt(idx);
- }
+ lastContents += new String(ch, start, length);
}
}