I've been looking around for this, but can't seem to find anything. I'm assuming that it is just not possible, but thought I'd ask just in case.
For File objects, I see that manage_edit() has the parameters: title, content_type, precondition, filedata & REQUEST. Setting something in the filedata parameter will replace the file's current data with that.
This implies (to me at least) that the only way one can edit a file is a complete rewrite. Does there exist a way to simply append data to the end of the file? For instance, if one wanted to write to a file line by line, is that possible in Zope?
out-of-the-box: NO
Appending data would require the manipulation of the linked list of Pdata elements. There is no API for this available...so basically forget it. What about the python pickle/cpickle and marshal modules? If I'm not wrong zope uses cpickle to append data to the Data.fs, or am I wrong?
I haven't read the module documetation deeply, but as I understand, pickle/cpickle is used for serializing python objects, while marshal is for binary data. http://docs.python.org/lib/module-pickle.html http://docs.python.org/lib/module-marshal.html Anyway, you still need to load the whole file into a temporal memory. Best regards Josef