主要内容

导出到CDF文件

这个例子展示了如何使用MATLAB®CDF低级函数将数据导出到CDF文件。MATLAB函数对应于CDF C API库中的例程。

要有效地使用MATLAB的CDF底层函数,必须熟悉CDF C接口。另外,CDF文件不支持非ascii编码的输入。金宝app因此,变量名、属性名、变量值和属性值必须使用7位的ASCII编码。

创建新的CDF文件

创建一个新的CDF文件my_file.cdf使用cdflib.create.这个函数对应于CDF库C API例程,CDFcreateCDF

cdfid = cdflib.create (“my_file.cdf”);

cdflib.create返回文件标识符,cdfid

在CDF文件中创建变量

创建变量命名时间纬度使用cdflib.createVar.这个函数对应于CDF库C API例程,CDFcreatezVar

time_id = cdflib.createVar (cdfid,“时间”“cdf_int4”1[],真的,[]);lat_id = cdflib.createVar (cdfid,“纬度”“cdf_int2”, 1181年,真的,真的);

cdflib.createVar为每个变量返回一个数字标识符。

创建一个名为图像

dimsize = [20 10];image_id = cdflib.createVar (cdfid,“图像”“cdf_int4”, 1...dimSizes,真实,真实的真正的);

写信给变量

将数据写入的第一和第二记录时间变量。记录数字是零基础的。的cdflib.putVarRecordData函数对应于CDF库C API例程,CDFputzVarRecordData

cdflib.putVarRecordData (cdfid time_id 0 int32 (23));cdflib.putVarRecordData (cdfid time_id 1 int32 (24);

将数据写入纬度变量。

data = int16 ([90:90]);Recspec = [0 1 1];Dimspec = {0 181 1};cdflib.hyperPutVarData (cdfid lat_id、recspec dimspec,数据);

将数据写入图像变量。

Recspec = [0 3 1];Dimspec = {[0 0], [20 10], [1 1]};数据=重塑(int32([0:599]), [20 10 3]);cdflib.hyperPutVarData (cdfid image_id、recspec dimspec,数据);

写入全局属性

创建一个全局属性标题使用cdflib.createAttr.这个函数对应于CDF库C API例程,CDFcreateAttr

titleAttrNum = cdflib.createAttr (cdfid,“标题”“global_scope”);

cdflib.createAttr返回属性的数字标识符。属性号是基于零的。

将值写入全局属性中的条目。

cdflib.putAttrEntry (cdfid titleAttrNum 0,“CDF_CHAR”“cdf实验组的标题”);cdflib.putAttrEntry (cdfid titleAttrNum 1,“CDF_CHAR”“作者”);

写入与变量相关的属性

在CDF文件中创建与变量关联的属性。

fieldAttrNum = cdflib.createAttr (cdfid,“FIELDNAM”“variable_scope”);unitsAttrNum = cdflib.createAttr (cdfid,“单位”“variable_scope”);

的属性写入时间变量。

cdflib.putAttrEntry (cdfid fieldAttrNum time_id,...“CDF_CHAR”“时间的观察”);cdflib.putAttrEntry (cdfid unitsAttrNum time_id,...“CDF_CHAR”“小时”);

获取CDF文件信息

获取关于使用的文件的信息cdflib.inquire.这个函数对应于CDF库C API例程,CDFinquireCDFCDFgetNumgAttributes

信息= cdflib.inquire (cdfid)
信息=结构体字段:编码:'IBMPC_ENCODING' majority: 'ROW_MAJOR' maxRec: 2 numVars: 3 numvAttrs: 2 numgAttrs: 1

cdflib.inquire返回一个结构数组,其中包含有关文件中的数据编码以及变量和属性的数量的信息。

关闭提供文件

关闭CDF文件使用cdflib.close.这个函数对应于CDF库C API例程,CDFcloseCDF.您必须关闭CDF,以确保自打开CDF以来所做的所有修改都被写入文件。

cdflib.close (cdfid);

另请参阅

外部网站