Is it possible to use Windows API ANSI functions with UTF-8 strings?
For example, say I have a path encoded in UTF-8. Can I call CreateDirectoryA
or CreateFileA
and use a UTF-8 path, or do I have to perform some conversion before calling the functions?
No. Use MultiByteToWideChar
to convert UTF-8 to UTF-16 and then call the wide character APIs such as CreateDirectoryW
or CreateFileW
.