Thank you guys for you help :)
-----Original Message-----
From: Andrew C. Oliver [mailto:[EMAIL PROTECTED]
Sent: Wednesday, May 04, 2005 7:31 AM
To: POI Users List
Subject: Re: how should we release the memory
Set wb, sheet, cell style, font to null when you're done.
Firouz Bharthania wrote:
> Hi,
>
>
>
> It seems that the memory does not get released after the excel document is
> created and written into the file!!!
>
> I highly appreciate is anybody can help me with this issue.
>
> Here it is the code I used to create the document.
>
>
>
>
>>public class ExcelWriter {
>
>
>
>> protected String file = null;
>
>
>
>> protected FileOutputStream fileOut = null;
>
>
>
>> protected HSSFWorkbook wb = new HSSFWorkbook();
>
>
>
>> protected HSSFSheet sheet = wb.createSheet("new sheet");
>
>
>
>
>
>> HSSFCellStyle dateCellStyle = wb.createCellStyle();
>
>
>
>> HSSFCellStyle timeCellStyle = wb.createCellStyle();
>
>
>
>> HSSFCellStyle decimalCellStyle = wb.createCellStyle();
>
>
>
>> HSSFCellStyle currencyCellStyle = wb.createCellStyle();
>
>
>
>> HSSFCellStyle stringCellStyle = wb.createCellStyle();
>
>
>
>> HSSFFont cellFont = wb.createFont();
>
>
>
>
>
>
>
>
>
>> public void close() throws IOException {
>
>
>
>> try {
>
>
>
>> wb.write(fileOut);
>
>
>
>> fileOut.close();
>
>
>
>> }catch(Exception e) {
>
>
>
>> e.printStackTrace();
>
>
>
>> }
>
>
>
>> }
>
>
>
>
>
>> public ExcelWriter(String file) throws IOException{
>
>
>
>> this.file = file;
>
>
>
>> fileOut = new FileOutputStream(file);
>
>
>
>
>>currencyCellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("0.00")
>
>
>>);
>
>
>
>
>>decimalCellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("0"));
>
>
>
>
>>dateCellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy"));
>
>
>
>>
>
>
>>timeCellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("h:mm
>
>
>>AM/PM"));
>
>
>
>> cellFont.setFontHeightInPoints((short)10);
>
>
>
>> cellFont.setFontName("Courier New");
>
>
>
>> currencyCellStyle.setFont(cellFont);
>
>
>
>> decimalCellStyle.setFont(cellFont);
>
>
>
>> stringCellStyle.setFont(cellFont);
>
>
>
>> dateCellStyle.setFont(cellFont);
>
>
>
>> timeCellStyle.setFont(cellFont);
>
>
>
>> }
>
>
>
>
>
>
>
>> protected HSSFCell createNewCell(int row, int column) {
>
>
>
>> HSSFRow sheetRow = null;
>
>
>
>> if((sheetRow = sheet.getRow(row)) == null) {
>
>
>
>> sheetRow = sheet.createRow((short)row);
>
>
>
>> }
>
>
>
>> HSSFCell cell = sheetRow.createCell((short)column);
>
>
>
>> return cell;
>
>
>
>> }
>
>
>
>
>
>> public void writeString(String string, int row, int column) throws
>
>
>>IOException{
>
>
>
>> HSSFCell cell = createNewCell(row, column);
>
>
>
>> cell.setCellValue(string);
>
>
>
>> cell.setCellStyle(stringCellStyle);
>
>
>
>> }
>
>
>
>
>
>> public void writeTimestamp(java.util.Date date, int row, int
>
>
>>column) throws IOException{
>
>
>
>> HSSFCell cell = createNewCell(row, column);
>
>
>
>> cell.setCellValue(date);
>
>
>
>> cell.setCellStyle(dateCellStyle);
>
>
>
>> }
>
>
>
>
>
>> public void writeNumber(BigDecimal value, int row, int column)
>
>
>>throws IOException{
>
>
>
>> HSSFCell cell = createNewCell(row, column);
>
>
>
>> cell.setCellValue(value.doubleValue());
>
>
>
>> cell.setCellStyle(currencyCellStyle);
>
>
>
>> }
>
>
>
>>}
>
>
>
>
>
>
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
Mailing List: http://jakarta.apache.org/site/mail2.html#poi
The Apache Jakarta Poi Project: http://jakarta.apache.org/poi/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
Mailing List: http://jakarta.apache.org/site/mail2.html#poi
The Apache Jakarta Poi Project: http://jakarta.apache.org/poi/