• 大小: 3.73MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-13
  • 语言: 其他
  • 标签: HDF5  HDF4  NC  跨平台  C++  

资源简介

针对遥感数据的hdf5、hdf4、nc格式数据的解析类 可以跨平台使用类文件只是需要重新下载链接库 其他的不需要 本压缩文件中带有Windows下的链接库但是没有linux下的链接库

资源截图

代码片段和文件信息

//************************************************ 
// 
//  文 件 名  : DFCFHdf4Reader.cpp
//  功能描述  : HDF4文件读取说明文件,该文件包含读取HDF4属性、数据的所有方法。具体方法包括:
//              判断文件是否为HDF4文件的方法、打开HDF4文件的方法、获取全局属性个数的方法、
//              获取全局属性值的方法、获取数据集个数的方法、根据数据集索引号获取数据集名称
//              的方法、获取数据集维数和维数规模的方法、获取数据集属性个数的方法、获取数据
//              集属性值的方法、读取指定数据集所有数据的方法、读取指定数据集范围数据的方法、
//              读取指定数据集范围数据且可设置步伐的方法、获取指定表格的记录数的方法、读取
//              指定表格的指定列的所有数据的方法、读取指定表格的指定列的范围数据的方法。   
//  创建日期  : 2011年06月07日                   
//  作    者  : 周晓亮            
//  修改记录  : 
//*************************************************
#include “DFCFHdf4Reader.h“

DFCFHdf4Reader::DFCFHdf4Reader(void)
{
InitAllBool();
}

DFCFHdf4Reader::~DFCFHdf4Reader(void)
{
CloseFile();
}

bool DFCFHdf4Reader::IsHdf4File(const char* i_chFileName)
{
if (NULL == i_chFileName) 
{
// int nErrCode = H4READ_ISH4FILE_ARGERR;
int  nLine = __LINE__;
string strFileName = __FILE__;
string strErrInfo = “HDF4打开文件参数异常“;
//DoError(nErrCodestrFileNamenLinestrErrInfo);
return false;
}
intn status = 0;
try
{
status = Hishdf(i_chFileName);
}
catch(...)
{
// int nErrCode = H4READ_ISH4FILE_FILEERR;
int  nLine = __LINE__;
string strFileName = __FILE__;
string strErrInfo = “HDF4打开文件异常“;
//DoError(nErrCodestrFileNamenLinestrErrInfo);
}
return status > 0? true : false;
}

void DFCFHdf4Reader::OpenFile(const char* i_chFileName)
{
if (NULL == i_chFileName) 
{
// int nErrCode = H4READ_OPENFILE_ARGERR;
int  nLine = __LINE__;
string strFileName = __FILE__;
string strErrInfo = “HDF4打开文件参数异常“;
//DoError(nErrCodestrFileNamenLinestrErrInfo);
return ;
}
try
{
m_fileId = Hopen(i_chFileNameDFACC_READ0);
m_sdId = SDstart(i_chFileNameDFACC_READ);
}
catch(...)
{
// int nErrCode = H4READ_OPENFILE_FILEERR;
int  nLine = __LINE__;
string strFileName = __FILE__;
string strErrInfo = “HDF4打开文件异常“;
//DoError(nErrCodestrFileNamenLinestrErrInfo);
return;
}
m_fileOpenState = true;
return;
}

int DFCFHdf4Reader::GetPublicAttrNum(void)
{
if (!m_fileOpenState) 
{
// int nErrCode = H4READ_GETPUBATTNUM_ARGERR;
int  nLine = __LINE__;
string strFileName = __FILE__;
string strErrInfo = “HDF4打开文件状态异常“;
//DoError(nErrCodestrFileNamenLinestrErrInfo);
return 0;
}
intn status = 0;
int32 dstNum = 0;
int32 attrNUm = 0;
try
{
status = SDfileinfo(m_sdId&dstNum&attrNUm);
}
catch(...)
{
// int nErrCode = H4READ_GETPUBATTNUM_READERR;
int  nLine = __LINE__;
string strFileName = __FILE__;
string strErrInfo = “HDF4获取全局属性个数异常“;
//DoError(nErrCodestrFileNamenLinestrErrInfo);
return 0;
}
return (int)attrNUm;
}

void* DFCFHdf4Reader::GetPublicAttrValue(const char* i_chAttrNameint* o_nBufSize)
{
if (!m_fileOpenState) 
{
// int nErrCode = H4READ_GETPUBATTVAL_ARGERR;
int  nLine = __LINE__;
string strFileName = __FILE__

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       9420  2011-06-08 14:13  NC\DFCFNetcdfReader.cpp

     文件       6286  2011-06-08 14:26  NC\DFCFNetcdfReader.h

     文件       7093  2011-01-22 09:52  NC\netcdf\ncvalues.cpp

     文件      10143  2010-08-16 11:14  NC\netcdf\ncvalues.h

     文件      42374  2011-01-22 09:52  NC\netcdf\netcdf.cpp

     文件      31577  2010-08-16 11:14  NC\netcdf\netcdf.h

     文件      18978  2011-06-03 15:18  NC\netcdf\netcdfcpp.h

     文件     448000  2010-04-19 17:15  Lib_Dll\Debug_dll\hd425m.dll

     文件    6540288  2011-05-06 13:24  Lib_Dll\Debug_dll\hdf5ddll.dll

     文件    1882624  2011-05-06 13:24  Lib_Dll\Debug_dll\hdf5dll.dll

     文件     357376  2011-05-06 13:24  Lib_Dll\Debug_dll\hdf5_cppddll.dll

     文件     218624  2011-05-06 13:24  Lib_Dll\Debug_dll\hdf5_cppdll.dll

     文件     145408  2011-05-06 13:24  Lib_Dll\Debug_dll\hdf5_hlddll.dll

     文件      91136  2011-05-06 13:24  Lib_Dll\Debug_dll\hdf5_hldll.dll

     文件      17920  2011-05-06 13:24  Lib_Dll\Debug_dll\hdf5_hl_cppddll.dll

     文件      91648  2010-04-19 17:15  Lib_Dll\Debug_dll\hm425m.dll

     文件     190976  2010-12-28 15:02  Lib_Dll\Debug_dll\netcdf.dll

     文件     442368  2010-12-28 15:02  Lib_Dll\Debug_dll\netcdfd.dll

     文件     106496  2007-10-08 09:13  Lib_Dll\Debug_dll\szlibdll.dll

     文件      61440  2010-03-18 11:44  Lib_Dll\Debug_dll\zlib1.dll

     文件      87214  2010-04-19 17:15  Lib_Dll\Debug_lib\hd425m.lib

     文件     468116  2011-05-06 13:20  Lib_Dll\Debug_lib\hdf5ddll.lib

     文件     285360  2011-05-06 13:20  Lib_Dll\Debug_lib\hdf5_cppddll.lib

     文件      26246  2011-05-06 13:20  Lib_Dll\Debug_lib\hdf5_hlddll.lib

     文件       8412  2011-05-06 13:20  Lib_Dll\Debug_lib\hdf5_hl_cppddll.lib

     文件      19188  2010-04-19 17:15  Lib_Dll\Debug_lib\hm425m.lib

     文件     143416  2010-11-08 15:00  Lib_Dll\Debug_lib\netcdf.lib

     文件     144010  2010-11-08 08:37  Lib_Dll\Debug_lib\netcdfd.lib

     文件     448000  2010-04-19 17:15  Lib_Dll\release_dll\hd425m.dll

     文件    1882624  2011-05-06 13:24  Lib_Dll\release_dll\hdf5dll.dll

............此处省略256个文件信息

评论

共有 条评论