HDF库使用环境搭建

来源:互联网 发布:bp算法怎么算 编辑:程序博客网 时间:2024/05/29 11:02

首先说一下需求:

在windows环境下,开发出一种对话框类程序,输入文件名或者具体数据集的名字,可以读取hdf4文件的数据,供后续使用。

 

一些简单介绍:


HDF格式一种数据存储格式,如果想读取其中的数据,我知道有两种方法,一种是在程序中内嵌idl控件的方法;另一种是用Hdf库的方法。第一种方法比较麻烦,因为idl语言的语法和c不同。我就采用第2种方法。

 

准备工作:

第2种方法需要到www.hdforg.com网站下载库文件和支持库文件,库要用HDF4的库(因为国内的hdf数据都是Hdf4的,你用hdf5作出的程序读不了hdf4的文件。其实这是版本兼容性的问题,hdforg那个公司做的这点不好),支持库是三个,包括jepg,szip,zlib,版本注意选择。另外本地装上VC开发工具。

 

环境搭建:

好了,废话了那么多,开始讲讲怎么搭建开发环境吧。在hdf4库解压缩后,有个文件INSTALL_WINDOWS.txt,我的环境搭建差不多就是从里面学到的,不过里面废话实在太多了。

总结起来就两个:

 

一是环境变量设置,一是增加包含头文件的目录和库的目录,并且添加链接库

 

先说环境变量设置。因为在HDF4库里使用了以下三个宏,来包含进支持库的功能,所以如果要使用支持库,就要定义这三个宏。

      HDF4_EXT_ZLIB
      HDF4_EXT_JPEG
      HDF4_EXT_SZIP

 

在我的电脑,右键->属性->高级->环境变量,在用户变量那里,点击New,变量名就是宏的名字,变量值就是库的路径,将这三个宏,分别添加。

如果是用Hdf的库,注意需要将宏的名字改了

改成     

      HDF5_EXT_ZLIB
      HDF5_EXT_JPEG
      HDF5_EXT_SZIP

变量值设置方法相同。

 

下面来讲一下增加包含头文件的目录和库的目录,并且添加链接库;

在VC6里,打开新建工程后,在菜单“工具”下面的“选项”里目录下面,选择include files,增加包含hdf4的头文件还有支持库的头文件路径,共4个。然后选择library files,添加hdf4库和支持库的库路径还有动态链接库的库路径。然后确定保存。

在“工程”菜单下,选择“设置”,“链接”,在对象/库模块里,原来的不要去掉,在后面加上hdf4的库名和支持库的库文件名字,中间用空格分开。

在VS2005里,略有不同。头文件和库文件路径的添加在"工具"->"选项"->"项目和解决方案"->"VC++目录"里设置。链接库在“项目”->"属性"->"配置属性"->"连接器"->"输入"->"附加依赖库"里添加。

 

备注说明:

hdf4不支持mfc,只支持控制台程序。所以如果想编写对话框程序,直接使用Hdf4的库是不行的,会报链接错误,说找不到__errno

我的解决办法是使用hdf4的库做读hdf4文件的小程序,解析出其中的数据,将数据以一定的格式存储在一个txt文件里,然后开发个对话框程序,在对话框程序里执行调用这个小程序,然后读那个txt文件,将里面的数据读取解析出来,存储到我们用的数据结构里。

 

其实hdf4库的使用也就是这几个小程序使用的,那个对话框程序根本没有使用。说是小程序,其实也不小。设计到hdf文件的读取和解析,以及数据在txt文件里以何种结构来存储。在后续的对话框程序里也要解析这个txt文件。在txt文件里的结构设计和读写,是重点。

原创粉丝点击