HDRMX / NXmx

NeXus/HDF5 MX format
2 stars 0 forks source link

Strings in NXmx - H5T_VARIABLE? #7

Closed fleon-psi closed 4 years ago

fleon-psi commented 4 years ago

Is there a preference how strings should be written in NXmx HDF5 - fixed length or with H5T_VARIABLE? Should both options be supported by software? Thanks for clarification!

yayahjb commented 4 years ago

Dear Filip, Variable length strings do work, but they are a royal pain for a lot of software packages. For maximal portability, I would recommend fixed length strings, using the C-style null termination and padding (my first choice), or fortran style blank termination and padding, and adopting the input processing practice of always stripping trailing nulls and blanks. The other portability action is to convert all incoming common line terminations: \n, \r, \z, \r\n to \n. Regards, Herbert

On Thu, Jul 23, 2020 at 8:08 AM Filip Leonarski notifications@github.com wrote:

Is there a preference how strings should be written in NXmx HDF5 - fixed length or with H5T_VARIABLE? Should both options be supported by software? Thanks for clarification!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/HDRMX/NXmx/issues/7, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABB6EAOERN3GMTQDVGZDMSDR5AR4RANCNFSM4PFU7TJA .

fleon-psi commented 4 years ago

Dear Herbert, Thank you very much for answering - I will therefore refrain from using H5T_VARIABLE in my code. Best, Filip

yayahjb commented 4 years ago

Very sensible

On Thu, Jul 23, 2020 at 10:45 AM Filip Leonarski notifications@github.com wrote:

Dear Herbert, Thank you very much for answering - I will therefore refrain from using H5T_VARIABLE in my code. Best, Filip

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/HDRMX/NXmx/issues/7#issuecomment-663048880, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABB6EAPMQIVE5LDXM7JAO5TR5BEJFANCNFSM4PFU7TJA .