我有 NetCDF 版本 3 的文件。
我使用了最新的 Windows 版 ncks(2014 年 10 月 1 日发布)来重新分块我的文件
ncks -4 --cnk_dmn lat,4 --cnk_dmn lon,4 --cnk_dmn time,512 2014.nc 2014_chunked.nc
是什么产生了 NetCDF 版本 4 的 2014_chunked.nc 文件
例如,新文件 2014_chunked.nc 可以通过 WCT 读取。 但是,java 代码会产生
[ucar.nc2.NetcdfFile] DEBUG Using IOSP ucar.nc2.iosp.hdf5.H5iosp
[ucar.nc2.iosp.hdf5.H5header] ERROR bad version 72 at filePos 22386
并抛出异常
代码是
import ucar.nc2.NetcdfFile;
NetcdfFile nativeNetCDFFile = NetcdfFile.open(fullPath);
我使用最新的 NetCDF4.5 for JRE 7 http://www.unidata.ucar.edu/downloads/netcdf/netcdf-java-4/index.jsp
我查看了netcdf jar文件,发现Nc4.class长度只有几个字节,因此该jar没有NetCDF4 iosp,并且对NetCDF 4文件使用H5iosp。
我认为新版本的 NetCDF 4.5 java 的使用方式必须与我一直使用的 4.2 版本略有不同,因为用于 netcdf 4.2 打开 HDF5 和 HDF4 文件的相同 java 代码工作正常,但对于 4.5 则不然:
private NetcdfFile file;
....
String path = groupInFile + GROUP_DELIMITER + nameInGroup;
Variable findVariable = file.findVariable(path);
出了什么问题?
最佳答案
这是 NetCDF 中的一个错误,由于我向 NetCDF 团队报告了错误,该错误自版本 4.5.4 以来已得到修复: http://www.unidata.ucar.edu/mailing_lists/archives/netcdf-java/2015/msg00028.html
关于java - NetCDF 4.5 Java NetCDF 文件版本 4 的问题 + HDF 的旧代码不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26481877/