On 1/28/2012 6:06 AM, Nick Burch wrote:
On Fri, 27 Jan 2012, Raindog wrote:
The problem I have is that the ObjectData byte[] is always length 0.
How should I go about getting the correct byte[] for the object?
Are you sure that's the record with the data in it? You can use
org.apache.poi.hssf.dev.BiffViewer to check where your known content
lives
Also, Excel normally stores embedded resources in other POIFS streams,
rather than in the record structure. Look for POIFS entries starting
with MBD and those should have your data in
Nick
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
Nick,
I tried what you said, but BiffViewer didn't give me any further clues.
This is the corresponding output for the object:
SUBRECORD: org.apache.poi.hssf.record.SubRecord$UnknownSubRecord
[sid=0x0007 size=2 : [02, 00]]
SUBRECORD: org.apache.poi.hssf.record.SubRecord$UnknownSubRecord
[sid=0x0008 size=2 : [01, 00]]
SUBRECORD: [ftPictFmla]
.f2unknown = 0x04B46900
.f3unknown = [02, 00, C8, E2, 01]
.unicodeFlag = false
.oleClassname = Packager Shell Object
.streamId = 0x01D9346F
[/ftPictFmla]SUBRECORD: [ftEnd]
[/ftEnd]
[/OBJ]
I'm guessing now that I need to somehow crack open the stream based on
the streamId, any pointers on how to do this? Using POIFSFileSystem, it
did not appear obvious as to how to do this.
Thanks,
Josh
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]