Main Content

matlab.io.fits.insertBTbl

在当前 HDU 后面插入二进制表

语法

insertBTbl(fptr,nrows,ttype,tform,tunit,extname,pcount)

说明

insertBTbl(fptr,nrows,ttype,tform,tunit,extname,pcount) 紧跟当前 HDU 之后插入新的二进制表扩展。所有后续扩展都将相应下移,以便为新扩展腾出空间。如果没有任何其他后续扩展,就会向文件末尾处追加新的表扩展。如果 FITS 文件当前为空,那么,此例程在向其追加表之前,会先创建一个虚拟主数组。新扩展变为 CHDU。如果文件中有后续扩展,并且表包含可变长度的数组列,则 pcount 必须指定数据堆的预期最终大小。否则,pcount 必须为零。

ttypetformtunits 指定为字符向量元胞数组或字符串数组。

此函数对应于 CFITSIO 库 C API 中的 fits_insert_btbl (ffibin) 函数。

示例

紧随主数组创建一个表。然后,紧挨着表的前面插入一个新表。

import matlab.io.*
fptr = fits.createFile('myfile.fits');
ttype = {'Col1','Col2'};
tform = {'9A','1D'};
tunit = {'m/s','candela'};
fits.createTbl(fptr,'binary',10,ttype,tform,tunit,'my-table');
fits.movRelHDU(fptr,-1);
fits.insertBTbl(fptr,5,ttype,tform,tunit,'my-new-table',0);
fits.closeFile(fptr);
fitsdisp('myfile.fits');

另请参阅

|