可以将HDF5写入stdout并从stdin读取(通过H5::File file("/dev/stdout",H5F_ACC_RDONLY)
或其他方式)?
我想要的是让程序foo
写入HDF5文件(比如说它的第一个参数)和另一个程序bar
来读取HDF5文件然后而不是
command_prompt> foo temp.h5
command_prompt> bar temp.h5
command_prompt> rm temp.h5
简单地说
command_prompt> foo - | bar -
程序foo
和bar
分别将特殊文件名-
理解为stdout
和stdin
。为了编写这些程序,我想知道1)这是否完全可行; 2)我如何实现这一点,即分别传递给H5Fcreate()
和H5Fopen()
的内容,以防文件名= -
。
我尝试过,似乎不可能(不是一个大惊喜)。 HDF5只有H5Fcreate()
,H5Fopen()
和H5Freopen()
,它们似乎都不支持stdin/stdout
的I / O.
答案 0 :(得分:1)
我认为您不能将stdin
用作hdf5输入文件。图书馆需要在标题内容和数据之间进行搜索,而您无法使用stdin
进行搜索。