试过,但失败了
昏暗的= 4;
文件= H5F。创建(fileName,“H5F_ACC_TRUNC”,…
“H5P_DEFAULT”,“H5P_DEFAULT”);
intType = H5T.copy (“H5T_NATIVE_INT”);
深圳(1)= H5T.get_size (intType);
strType = H5T。复制(“H5T_C_S1”);
H5T。set_size (strType“H5T_VARIABLE”);
深圳(2)= H5T.get_size (strType);
%数组大小
base_type_id = H5T.copy (“H5T_NATIVE_DOUBLE”);
arrayType = H5T。array_create (base_type_id 1 ADIM0);
type_id = H5T.copy (arrayType);
H5T。set_size (type_id 8);
深圳(3)= H5T.get_size (arrayType);
intType = H5T.copy (“H5T_NATIVE_INT”);
深圳(4)= H5T.get_size (intType);
抵消(1)= 0;
抵消(2:4)= cumsum(深圳(1:3));
memtype = H5T。创建(“H5T_COMPOUND”总和(深圳));
H5T。在sert (memtype,…
的基坑抵消(1)intType);
H5T。在sert (memtype,…
“FieldB”抵消(2)strType);
H5T。在sert (memtype,…
“FieldArray”抵消(3)arrayType);
H5T。在sert (memtype,…
“FieldC”抵消(4)intType);
文件类型= H5T。创建(“H5T_COMPOUND”总和(深圳));
H5T。在sert (filetype,的基坑抵消(1)intType);
H5T。在sert (filetype,“FieldB”抵消(2)strType);
H5T。在sert (filetype,“FieldArray”抵消(3)arrayType);
H5T。在sert (filetype,“FieldC”抵消(4)intType);
= h5空间。create_simple (fliplr (dim), []);
dset = H5D。创建(file, DATASET, filetype, space,“H5P_DEFAULT”);
H5D。写(dset memtype,“H5S_ALL”,“H5S_ALL”,“H5P_DEFAULT”翻转(wdata));