www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - Why does toUTF16z only work with UTF8 encoding?

reply Andrej Mitrovic <none none.none> writes:
toUTF16 can take a char[], wchar[] or dchar[].

But toUTF16z can only take a char[]. Why?

I'm storing some text as dchar[] internally and have to pass it to WinAPI
Unicode functions which expect null-terminated UTF16 strings. But toUTF16z only
works with char[] for some reason.
May 08 2011
parent Andrej Mitrovic <andrej.mitrovich gmail.com> writes:
I guess this should do it:

const(wchar)* toUTF16z(in dchar[] s)
{
    return (toUTF16(s) ~ "\000").ptr;
}
May 08 2011