程序中添加的头文件是netcdfcpp.h文件
**************************************************************************************************
**************************************************************************************************
**************************************************************************************************
netcdf的C++接口是基于netcdf的C语言接口,所以在使用c++接口之前,我们需要安装netcdf的c语言版本。
使用的netcdf的C语言版本是NetCDF-4.2.1,下载地址:http://www.unidata.ucar.edu/software/netcdf/docs/winbin.html
这个版本是二进制版本,直接点击安装即可,然后会得到include,lib和bin等几个文件。
**************************************************************************************************
使用方法:
1.首先解压这个压缩文件;
2.将解压后的文件中的cxx4文件夹中的netcdf文件改为netcdfcpp.h;
3.我们需要用的是cxx4文件夹中的所有的.h和.cpp文件;
**************************************************************************************************
注意:不使用hdf5的话,ncFile.cpp文件需要做改动:去掉红色前面的NC_NETCDF4
case NcFile::newFile:
ncCheck(nc_create(filePath.c_str(), NC_NOCLOBBER, &myId),__FILE__,__LINE__);
break;
case NcFile::replace:
ncCheck(nc_create(filePath.c_str(), NC_CLOBBER, &myId),__FILE__,__LINE__);
break;
**************************************************************************************************
4.将所有的.h和.cpp文件添加到你的工程目录下即可,分别添加到工程头文件和源文件中,在VS项目属性——VC++目录——包含目录,添加.h头文件所在的位置即可。
5.将netcdf的c语言的头文件netcdf.h,动态链接库netcdf.dll和库文件netcdf.lib添加到VS2010中。
如何添加动态链接库:
a.将netcdf的c语言版本的include,lib和bin文件添加到工程目录下;
b.VS中项目属性——链接器——常规——附加库目录,这里添加你的bin文件中的netcdf.dll路径;
c.VS中项目属性——链接器——输入——附加依赖项,这里添加netcdf.lib库文件;
d.VS中项目属性——VC++目录——包含目录,添加netcdf.h头文件的位置;
e.VS中项目属性——VC++目录——库目录,添加netcdf.lib库文件的位置。
测试成功与否:注意添加的头文件netcdfcpp.h
1.首先创建***.nc文件:
#include <iostream>
#include "netcdfcpp.h"
#include <vector>
using namespace std;
using namespace netCDF;
using namespace netCDF::exceptions;
static const int NX = 6;
static const int NY = 12;
static const int NC_ERR = 2;
int main()
{
int dataOut[NX][NY];
for(int i = 0; i < NX; i++)
for(int j = 0; j < NY; j++)
dataOut[i][j] = i * NY + j;
try
{
NcFile dataFile("simple_xy.nc", NcFile::replace);
NcDim xDim = dataFile.addDim("x", NX);
NcDim yDim = dataFile.addDim("y", NY);
vector dims;
dims.push_back(xDim);
dims.push_back(yDim);
NcVar data = dataFile.addVar("data", ncInt, dims);
data.putVar(dataOut);
return 0;
}
catch(NcException& e)
{e.what();
return NC_ERR;
}
}
2.读取刚创建的***.nc文件:
#include
#include "netcdfcpp.h"
using namespace std;
using namespace netCDF;
using namespace netCDF::exceptions;
static const int NX = 6;
static const int NY = 12;
static const int NC_ERR = 2;
int main()
{
try
{
int dataIn[NX][NY];
NcFile dataFile("simple_xy.nc", NcFile::read);
NcVar data=dataFile.getVar("data");
if(data.isNull()) return NC_ERR;
data.getVar(dataIn);
for (int i = 0; i < NX; i++)
for (int j = 0; j < NY; j++)
if (dataIn[i][j] != i * NY + j)
return NC_ERR;
return 0;
}catch(NcException& e)
{
e.what();
cout<<"FAILURE*************************************"<<endl;
return NC_ERR;
}
}
- Windows下Nginx配置SSL实现Https访问(包含证书生成)
Vincent.李 Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...
- 【经验之谈】Windows环境下配置WordPress
前言 wordpress全球著名的开放博客平台,拥有成千上万个各式插件和不计其数的主题模板样式,使用php和mysql搭建,下面说下载windows环境下配置wordpress,经验之谈. 安装 关于 ...
- 在windows下安装配置Ulipad
在windows下安装配置Ulipad 今天推荐一款轻便的文本编辑器Ulipad,用来写一些小的Python脚本非常方便. Ulipad下载地址: https://github.com/limodou ...
- dpm-release3.1在windows下的配置
dpm-release3.1在windows下的配置 dpm是做目标检测objecjt detection的经典方法.dpm系列代码默认是在linux和mac下运行测试过的,windows下默认是不能 ...
- Windows下gvim配置
Windows下gvim配置原作地:http://hi.baidu.com/leemoncc/blog/item/a6be15cf40d7ab31b600c806.html 0.准备软件及插件. (a ...
- Windows Server 2008R2配置MySQL Cluster
目录 配置环境 相关知识 配置过程 配置 ini参数解释 启动集群 检查配置 同步测试 故障测试 写在之后 配置环境 VMware:(版本10.0.01) 操作系统:Windows Server 20 ...
- Windows 7下配置JDK环境变量和Java环境变量配置
下面来介绍一下Java环境变量配置,是在Windows 7下配置JDK环境变量. 方法/步骤 1 安装JDK,安装过程中可以自定义安装目录等信息,例如我们选择安装目录为:C:\Program Fil ...
- Windows使用Apache2配置Git服务器
Windows使用Apache2配置Git服务器 本文地址:http://www.cnblogs.com/cnscoo/p/3373095.html Git下载: 网站:https://code.go ...
- Tomcat7.0.22在Windows下详细配置过程
Tomcat7.0.22在Windows下详细配置过程 一.JDK1.7安装 1.下载jdk,下载地址:http://www.oracle.com/technetwork/java/javase/do ...
随机推荐
- h5内容初探
h5简介: h5新特性 h5新增标签 article 和 section 的区别相当于 div 和 p标签的区别 1—6都是块级元素 h5新增属性 拖放 拖动事件 <style> ...
- 深入理解hello world
阅读目录 为什么所有东西都是从类开始的 为什么总是需要有一个“main”方法 HelloWorld的字节码 HelloWorld在JVM中是如何运行的 对于每个Java程序员来说,HelloWorld ...
- Java中字节流如何转字符流,OutputStreamWriter用法
OutputStreamWriter 将字节流转换为字符流.是字节流通向字符流的桥梁.如果不指定字符集编码,该解码过程将使用平台默认的字符编码,如:UTF-8: 步骤: 1.创建流 子类对象 绑定数 ...
- Python基础之-----------函数
---恢复内容开始--- 函数:在其他的语言中,我们也经常听到函数的概念,那么什么是函数呢?在Java中叫做method: 定义:函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函 ...
- The <classpath> or <modulepath> for <junit> must include junit.jar if not in Ant's own classpath
The <classpath> or <modulepath> for <junit> must include junit.jar if not in Ant's ...
- python 函数的定义及传参
函数是一个通用的程序结构部件,是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 定义一个简单的函数: >>> def test(a): #创建一个函数,函数名是test ...
- Springmvc配置时间日期转换
1.局部日期转换 @Controller public class ProductController{ @RequestMapping(value="/test/springmvc.do& ...
- Spring 学习笔记
Spring 的 Ioc 容器 所有的组件都是被动的( Passive),所有的组件初始化和调用都由容器负责.组件处在一个容器当中,由容器负责管理. BeanFactory 根据配置文 ...
- oracle 简单输出语句与赋值
输出: declare stuName varchar2(30); stuAge number; begin stuName:='jack'; stuAge:=30; dbms_output.put_ ...
- javascript基础:函数参数与闭包问题
今天在写东西的时候,对函数参数的概念有些模糊,查阅相关资料后,在博客上记点笔记,方便日后复习. 首先,在js中函数参数并没有强语言中那么要求严格,他不介意传递进来多少个参数,也不在乎传进来的参数是什么 ...