NetCDF 4.5 Java Проблемы с файлами NetCDF версии 4 + старый код для HDF не работает

У меня есть файл NetCDF версии 3. Я использовал последнюю версию ncks для Windows (выпущенную 1 октября 2014 г.), чтобы повторно обработать свой файл ncks -4 --cnk_dmn lat,4 --cnk_dmn lon,4 --cnk_dmn time,512 2014.nc 2014_chunked.nc, который произвел файл 2014_chunked.nc для NetCDF версии 4.

Новый файл 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 для JRE 7 http://www.unidata.ucar.edu/downloads/netcdf/netcdf-java-4/index.jsp

Я просмотрел файл jar netcdf и обнаружил, что Nc4.class имеет длину всего несколько байтов, поэтому jar не имеет NetCDF4 iosp и использует H5iosp для файлов NetCDF 4.

Я полагаю, что новая версия NetCDF 4.5 java должна использоваться несколько иначе, чем версия 4.2, которую я использовал все время, поскольку тот же код Java для открытия файлов HDF5 и HDF4 для netcdf 4.2 работает нормально, но для 4.5 нет:

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

Что не так?


person Antonio    schedule 21.10.2014    source источник


Ответы (1)


Это была ошибка в NetCDF, которая была исправлена ​​начиная с версии 4.5.4 из-за моего отчета об ошибке команде NetCDF: http://www.unidata.ucar.edu/mailing_lists/archives/netcdf-java/2015/msg00028.html

person Antonio    schedule 20.04.2015