Hi,
I am trying to read an HDF5 file using Fortran. I can read all the datasets I
need except one which is a string. What am I doing wrong? I can’t find many
examples of reading a fixed-length string array.
Thanks!
Here is the relevant output from h5dump:
DATASET "spacecraft_overpass_time_utc" {
DATATYPE H5T_STRING {
STRSIZE 24;
STRPAD H5T_STR_NULLTERM;
CSET H5T_CSET_ASCII;
CTYPE H5T_C_S1;
}
Here is my Fortran code:
use hdf5
…
integer :: istatus
integer(HID_T) :: fileid,dsetid,datatype
integer, parameter :: n_ease=267264
character*80 :: dsetname(12)
character(len=24), dimension(n_ease) :: tutc_ease
integer(HSIZE_T), dimension(1) :: dims,maxdims,newdims
integer(SIZE_T) :: mysize,sdim
dims(1)=n_ease
!Open fortran interface
call h5open_f(istatus)
call h5fopen_f(fname,H5F_ACC_RDWR_F,fileid,istatus)
dsetname(5)='Soil_Moisture_Retrieval_Data/spacecraft_overpass_time_utc'
call h5dopen_f(fileid,dsetname(5),dsetid,istatus)
call h5dget_type_f(dsetid,datatype,istatus) !datatype is not equal to
H5T_STRING!
call h5tget_size_f(datatype,mysize,istatus) !mysize is good
call h5dread_f(dsetid,H5T_STRING,tutc_ease,dims,istatus) !errors here
The errors are:
HDF5-DIAG: Error detected in HDF5 (1.8.7) thread 0:
#000: H5Dio.c line 174 in H5Dread(): can't read data
major: Dataset
minor: Read failed
#001: H5Dio.c line 337 in H5D_read(): unable to set up type info
major: Dataset
minor: Unable to initialize object
#002: H5Dio.c line 836 in H5D_typeinfo_init(): unable to convert between src
and dest datatype
major: Dataset
minor: Feature is unsupported
#003: H5T.c line 4459 in H5T_path_find(): no appropriate function for
conversion path
major: Datatype
minor: Unable to initialize object
--
Clay Blankenship * USRA Research Scientist
[email protected]<mailto:[email protected]> *
256-961-7638
320 Sparkman Drive * Huntsville, AL 35805 USA
NASA-MSFC Short-Term Prediction Research and Transition (SPoRT) Center
_______________________________________________
Hdf-forum is for HDF software users discussion.
[email protected]
http://lists.hdfgroup.org/mailman/listinfo/hdf-forum_lists.hdfgroup.org
Twitter: https://twitter.com/hdf5