comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Reopen HDF5 file to add more data?
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Re: Reopen HDF5 file to add more data? [message #90198 is a reply to message #90195] Tue, 10 February 2015 09:25 Go to previous message
dg86 is currently offline  dg86
Messages: 118
Registered: September 2012
Senior Member
On Tuesday, February 10, 2015 at 3:17:39 AM UTC-5, superchromix wrote:
> On Monday, February 9, 2015 at 5:25:56 PM UTC+1, David Grier wrote:
>> Dear Folks,
>>
>> It appears not to be possible to add more data to an HDF5 file once
>> the file has been closed, at least not in the IDL implementation.
>> Is that correct?
>>
>> Here's a minimal example of what I'm trying to do. This triggers
>> the error that inspires my question.
>>
>> Is there a way to reopen an file for writing, or do I have to read in the
>> old archive and recopy everything to a new archive?
>>
>> Many thanks,
>>
>> David
>>
>> ;--- cut here for minimal example ---
>> filename = 'testfile.h5'
>> group = 'group'
>> name = 'testdata'
>>
>> ;;; Create and close an HDF5 archive with one group and no data
>> fid = h5f_create(filename)
>> gid = h5g_create(fid, group)
>> h5g_close, gid
>> h5f_close, fid
>>
>> ;;; Reopen the HDF5 archive to add some data to the group
>> fid = h5f_open(filename)
>> gid = h5g_open(fid, group)
>>
>> ;;; attempt to write some data
>> a = bindgen(640, 480)
>> tid = h5t_idl_create(a)
>> sid = h5s_create_simple(a.dim)
>> did = h5d_create(gid, name, tid, sid) ;;; <-- this fails
>> h5d_write, did, a
>>
>> ;;; close the file
>> h5d_close, did
>> h5s_close, sid
>> h5t_close, tid
>> h5g_close, gid
>> h5f_close, fid
>
>
> hi David,
>
> You need to use H5D_EXTEND to increase the size of your dataset before you can append additional data.
>
> best
> Mark

It turns out the answer is even simpler than that.
H5F_OPEN opens a file read-only by default. The /WRITE switch opens it
read-write. Everything is working now!

TTFN,

David
[Message index]
 
Read Message
Read Message
Read Message
Previous Topic: Hard crash
Next Topic: image function question

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 19:30:44 PDT 2025

Total time taken to generate the page: 0.00425 seconds