So: are there any benefits?
Well, without being an expert in these things i could imagine that there are benefits as well as drawbacks to using DOM Nodes.
I would begin by asking the question:
"
Why does the
TsSpreadOpenDocReader use TDOMNode?"
Is it because it's easier to use (to read an XML) than dismembering the XML yourself with endless pos-functions? If so... that would be the first benefit... simplicity
Using DOM Nodes has the advantage of always using the standard (XML) and not having to worry if you set an > in the right place or not.
Another thing... On the dutch forum
we also discussed the fact that fpspreadsheet
is not suitable for very large files. When creating a file with 80.000 rows and 40 columns you'll get a out of memory error for sure (>1.8GB memory usage). Maybe with DOM Nodes this would be better (but i'm not sure). Maybe it could even be worse.
(I saw some mention about files >4GB possible with the new zipper.pp but i don't see that happening with the current memory usage of fpspreadsheet. In that case there should be some swapping to disc mechanism build in)
fpspreadsheet is also slow with writing very large spreadsheet (i.e. >40.000 rows 20 colums). Perhaps also due to the string build-up (but again i'm not sure).
As a possible drawback... You are adding another layer to the process which could contain bugs, but my short experience here is that these are very quickly resolved.
The illegal xml character issue is fixed in rev 3300.
Thanks
