/********************************************************************/
/*
   Create a dataset with a string in it.
*/
/********************************************************************/

#include "hdf5.h"
#define FILE "chard.h5"

main() {

   hid_t       file_id, dataset_id, dataspace_id;  /* identifiers */
   herr_t      status;
   char        metabuf[16];
   hid_t       dtype;
   size_t      size;

   file_id = H5Fcreate(FILE, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
   dataspace_id = H5Screate (H5S_SCALAR);

   dtype = H5Tcopy (H5T_C_S1);
   size = 16;
   status = H5Tset_size (dtype, size);
   strcpy (metabuf, "This is a test. ");
   metabuf[15] = '\0';
   
   dataset_id = H5Dcreate(file_id, "Char Data", dtype, dataspace_id, H5P_DEFAULT);

   status = H5Dwrite (dataset_id, dtype, H5S_ALL, H5S_ALL, H5P_DEFAULT, metabuf);

   status = H5Dclose(dataset_id);
   status = H5Sclose(dataspace_id);
   status = H5Fclose(file_id);
}

