我进行了一些研究,并使用h5py模块将结果存储在HDF5文件中。我多次使用h5py模块和来自HDF5组的HDF查看工具打开并读取数据,这一切都很正常,直到有一天我的电脑在HDF视图中打开文件时崩溃了。
重新启动计算机后,我无法再打开文件。 HDF查看工具显示一个普通错误:“无法打开文件”
我用h5py编写了该文件,因此我决定尝试使用它来读取数据。该文件以libver ='latest'的swmr模式编写。 我尝试了以下方法:
重新启动计算机后,我无法再打开文件。 HDF查看工具显示一个普通错误:“无法打开文件”
我用h5py编写了该文件,因此我决定尝试使用它来读取数据。该文件以libver ='latest'的swmr模式编写。 我尝试了以下方法:
with h5py.File(fpath, 'r', swmr=True, libver='latest') as f:
pass
返回错误信息 "OSError: 无法打开文件(文件尚未为 SWMR 写入而打开)"。
with h5py.File(fpath, 'r') as f:
pass
返回一个错误 "OSError: 无法打开文件(文件已经以写入模式打开(可以使用h5clear文件来清除文件一致性标志))"
现在我想知道,h5py模块是否已经实现了h5clear选项?我在任何地方都找不到关于这个的信息。
编辑:删除了文件(抱歉)
h5clear
命令。我已经安装了hdf5 1.10.0-patch1
。其他命令行工具如h5dump
、h5repack
都可以正常使用。是否有任何方法可以使用现有的工具清除或重置标志?(顺便说一下,我使用的是 Ubuntu Bionic Beaver 操作系统) - hridayns