; int main () {char sText [ 13 ] = " Hello World ! " ;
2 Inserte las siguientes líneas de código , que utilizan la función MultiByteToWideChar para determinar el tamaño de la UTF - 16 la representación de la cadena . Utiliza este tamaño para asignar un búfer nuevo que puede contener la versión UTF - 16 de la cadena:
DWORD dwNum = MultiByteToWideChar ( CP_ACP , 0, sText , -1 , NULL, 0 ) ; wchar_t * pwText ; pwText = new wchar_t [ dwNum ] ;
3
Escriba el siguiente texto en el archivo . La función MultiByteToWideChar toma la cadena ASCII y lo convierte en UTF - 16 , el almacenamiento en la memoria intermedia :
MultiByteToWideChar ( CP_ACP , 0, sText , -1, pwText , dwNum ) ;
4
Escriba el siguiente código en el archivo. La función WideCharToMultiByte le indica el tamaño de la cadena devuelta por lo que puede crear un búfer para la representación UTF-8 :
dwNum = WideCharToMultiByte ( CP_UTF8 , 0, pwText , -1 , NULL, 0 , NULL , NULL ) ; char * psText ; psText = new char [ dwNum ] ;
5
Añada el siguiente código, que convierte la cadena UTF - 16 a UTF - 8 , almacenar el resultado en el buffer que acaba de crear :
WideCharToMultiByte ( CP_UTF8 , 0, pwText , -1, psText , dwNum , NULL , NULL ) ;
6
Añada las siguientes líneas para mostrar la UTF - 8 y terminar la función principal : cout << psText ;}