1

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);

JRE 7 http://www.unidata.ucar.edu/downloads/netcdf/netcdf-java-4/index.jspには最新の NetCDF4.5 を使用し ます。

netcdf jar ファイルを調べたところ、Nc4.class の長さが数バイトしかないことがわかりました。したがって、jar には NetCDF4 iosp がなく、NetCDF 4 ファイルに H5iosp を使用しています。

netcdf 4.2 の HDF5 および HDF4 ファイルを開くための同じ Java コードは正常に動作しますが、4.5 では動作しないため、NetCDF 4.5 Java の新しいバージョンは、私が常に使用していたバージョン 4.2 とは少し異なる方法で使用する必要があると思います。

private NetcdfFile file;
....
String path = groupInFile + GROUP_DELIMITER + nameInGroup;
Variable findVariable = file.findVariable(path);

なにが問題ですか?

4

1 に答える 1