Reading and Writing NETCDF Files

NETCDF is a directory of C++ programs which illustrate the use of the NETCDF library and file format.

NETCDF (Network Common Data Form) is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented scientific data.

For some reason, the C++ version of the NETCDF user guide does not include any examples of programs whatsoever. One has to infer what to do based solely on the description of the classes. The example programs in this directory are supplied by the NETCDF implementors, and must serve as partial, though scantily documented, substitutes for the missing information in the user guide.


The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.


NETCDF is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version.

Related Programs:

CDL, a data directory which contains examples of CDL files, a text version of NETCDF files created by the NCDUMP program;

GFD2, a dataset directory which contains geophysical data, stored in NetCDF format.

GFD2, MATLAB programs which simulate geophysical fluid dynamics.

NETCDF, a data directory which contains examples of NETCDF files, a format for the interchange of scientific data.


  1. Russ Rew, Glenn Davis, Steve Emmerson, Harvey Davies, Ed Hartne,
    The NetCDF User's Guide,
    Unidata Program Center, March 2009.
  2. Russ Rew,
    The NetCDF C++ Interface Guide,
    Unidata Program Center, August 2008.

Examples and Tests:

SIMPLE_XY_WR writes data to a NETCDF file. The data is a simple two-dimensional array.

SIMPLE_XY_RD reads data from a NETCDF file.

SFC_PRES_TEMP_WR writes data to a NETCDF file. The data will include units attributes and coordinate dimensions.

SFC_PRES_TEMP_RD reads data from a NETCDF file.

PRES_TEMP_4D_WR writes data to a NETCDF file. The data will be four-dimensional and use a record dimension.

PRES_TEMP_4D_RD reads data from a NETCDF file.

You can go up one level to the C++ source codes.

Last revised on 02 December 2009.