On Tue, 01 Sep 2015 19:40:24 +0300, drug wrote: > I'm just trying to automatically convert D types to hdf5 types so I > guess char[..] isn't obligatory some form of UTF-8 encoded text. Or I > should treat it so?
Because of D's autodecoding it can be problematic to assume UTF-8 if other encodings are actually in use. If, for instance, you try printing a string stored as char[] that is actually Latin-1 encoded and contains characters from the high range, you'll get a runtime UTF-8 decoding exception. If you don't know ahead of time what the encoding will be, using ubyte[] will be safer. The other option is to dynamically reencode strings to UTF-8 as you read them.