Main Content

matlab.io.hdf4.sd.writeData

名前空間: matlab.io.hdf4.sd

データセットへの書き込み

構文

writeData(sdsID,data)
writeData(sdsID,start,data)
writeData(sdsID,start,stride,data)

説明

writeData(sdsID,data) は、sdsID で識別されるデータセットにすべてのデータを書き込みます。

writeData(sdsID,start,data) は、連続したハイパースラブをデータセットに書き込みます。start は、0 ベースの開始インデックスを指定します。各次元に沿った値の数は、data のサイズから推定されます。

writeData(sdsID,start,stride,data) はグリッド データフィールドに、不連続なハイパースラブのデータを書き込みます。各次元に沿って書き込まれる要素の数は、data のサイズまたはデータセットそのものから推定されます。

startstride は、0 ベースのインデックスを使用します。

この関数は HDF ライブラリ C API の関数 SDreadchunk に相当しますが、MATLAB® は FORTRAN スタイルの順序を使用するので、start パラメーターと stride パラメーターは、C ライブラリ API とは逆の順序になります。

2 次元データセットに書き込みます。

import matlab.io.hdf4.*
sdID = sd.start('myfile.hdf','create');
sdsID = sd.create(sdID,'temperature','double',[10 20]);
data = rand(10,20);
sd.writeData(sdsID,[0 0],data);
sd.endAccess(sdsID);
sd.close(sdID);

2 次元で無制限のデータセットに書き込みます。

import matlab.io.hdf4.*
sdID = sd.start('myfile.hdf','create');
sdsID = sd.create(sdID,'temperature','double',[10 0]);
data = rand(10,20);
sd.writeData(sdsID,[0 0],data);
data = rand(10,30);
sd.writeData(sdsID,[0 20],data);
sd.endAccess(sdsID);
sd.close(sdID);