LightCells API faster - but size of generated excel file is bigger

Hi,

Aspose gives the lightcells API and I was recommended to use that as I used the regular approach to render my files:

My approach:

Workbook wb= new Workbook();
File f = new File("\sample_input_file.txt");
Scanner s = new Scanner(f);
while (s.hasNextLine())
{
String line = s.nextLine();
String[] details = line.split("\t");
for(int y=0;y<details.length;y++)
{
c=CSVWB.getWorksheets().get(0).getCells().get(x,y);
c.setValue(details[y]);
}
x++;
}
CSVWB.save(\cell_get_set_sample_input_file.xlsx");

Sometimes for larger files this will take 10-15 mins to render.

I used LightCells (as Amjad recommended to me) as it was faster and render time of workbook came down to few secs. I was amazed at its speed.

BUT

File generated by my old method is smaller than the file generated by LightCells API.

It seems that LightCells taking an event driven approach - does not share strings - i.e. reuse the same string (if its there in another row or another sheet).
in the excel file structure:

my approach: xl -> sharedstrings.xml has all the unique distinct values being used in my excel
lightcells : xl->sharedstrings.xml has nothing.

I believe the performance for lightcells api is coming at cost to size of the file.cell_get_set_sample_input_file.zip (1.4 MB)

The attached file you can see - cell_get_set approach is 600KB less. This example might be small diff, but when I go to render my files, I see at times few MB difference - the lightcells being the bigger always.

@chetan.mishra,

Thanks for the sample code segment and sample files.

I guess we already explained and clarified you for your issue in your other thread post.

In the event of any further query or issue, please feel free to write us back, we will be happy to assist you soon.