Package org.apache.poi.xssf.streaming
Class SheetDataWriter
java.lang.Object
org.apache.poi.xssf.streaming.SheetDataWriter
- All Implemented Interfaces:
Closeable
,AutoCloseable
- Direct Known Subclasses:
GZIPSheetDataWriter
,SheetDataWriterWithDecorator
Initially copied from BigGridDemo "SpreadsheetWriter".
Unlike the original code which wrote the entire document,
this class only writes the "sheetData" document fragment
so that it was renamed to "SheetDataWriter"
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
flush and close the temp data writer.Create a temp file to write sheet data.createWriter
(File fd) Create a writer for the sheet data.protected InputStream
Override this to translate (such as decrypt or expand) the file input stream as it is being read from disk.protected OutputStream
Override this to translate (such as encrypt or compress) the file output stream as it is being written to disk.protected void
finalize()
int
int
int
int
protected File
protected void
void
void
Write a row to the file
-
Constructor Details
-
SheetDataWriter
- Throws:
IOException
-
-
Method Details
-
createTempFile
Create a temp file to write sheet data. By default, temp files are created in the default temporary-file directory with a prefix "poi-sxssf-sheet" and suffix ".xml". Subclasses can override it and specify a different temp directory or filename or suffix, e.g..gz
- Returns:
- temp file to write sheet data
- Throws:
IOException
-
createWriter
Create a writer for the sheet data.- Parameters:
fd
- the file to write to- Throws:
IOException
-
decorateOutputStream
Override this to translate (such as encrypt or compress) the file output stream as it is being written to disk. The default behavior is to to pass the stream through unmodified.- Parameters:
fos
- the stream to decorate- Returns:
- a decorated stream
- Throws:
IOException
- See Also:
-
close
flush and close the temp data writer. This method must be invoked before callinggetWorksheetXMLInputStream()
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
getTempFile
-
getWorksheetXMLInputStream
- Returns:
- a stream to read temp file with the sheet data
- Throws:
IOException
-
decorateInputStream
Override this to translate (such as decrypt or expand) the file input stream as it is being read from disk. The default behavior is to to pass the stream through unmodified.- Parameters:
fis
- the stream to decorate- Returns:
- a decorated stream
- Throws:
IOException
- See Also:
-
getNumberOfFlushedRows
public int getNumberOfFlushedRows() -
getNumberOfCellsOfLastFlushedRow
public int getNumberOfCellsOfLastFlushedRow() -
getLowestIndexOfFlushedRows
public int getLowestIndexOfFlushedRows() -
getLastFlushedRow
public int getLastFlushedRow() -
finalize
-
writeRow
Write a row to the file- Parameters:
rownum
- 0-based row numberrow
- a row- Throws:
IOException
- If an I/O error occurs
-
writeCell
- Throws:
IOException
-
outputQuotedString
- Throws:
IOException
-