2012年11月30日金曜日

matlabでHDF5のデータセットを更新する

matlabにはHDF5フォーマットのデータファイルを簡単に読み書きできる便利な関数のセットがありますが、難点はh5writeを使ってデータセットを上書き更新することができないことです。(h5writeattではアトリビュートの上書き更新ができるのですが...)

データセットを更新するためには、対象となるデータセットを一旦削除して、新たに書き込むという作業が必要になります。matlabではH5Lライブラリのdeleteという関数を使うことになりますが、例えば

fid = H5F.open(’ファイル名','H5F_ACC_RDWR','H5P_DEFAULT');
        H5L.delete(fid,'削除したいデータセット,'H5P_DEFAULT');
        H5F.close(fid);

で削除することができます。

0 件のコメント:

コメントを投稿