UTF-8 ==> Unicode ==> DBCS 显示

解决方案 »

  1.   

    UTF-8 ==> Unicode
    MultiByteToWideChar(CP_UTF8,Unicode ==> DBCS 
    WideCharToMultiByte(CP_ACP,Unicode ==> UTF-8
    WideCharToMultiByte(CP_UTF8,
      

  2.   

    我先前试验过这个方法,但有两个问题1是 MultiByteToWideChar(CP_UTF8,只能在NT和2000下使用(帮助是这么写的)2是 WideCharToMultiByte(CP_ACP, 我使用的时候不知道为什么总是出错,返回是0,没有进行转换,不知道为什么
      

  3.   

    WideCharToMultiByte调用时,第一个参数肯定不应该是CP_ACP吧,应该是中文的copepage,具体是多少我就不太清楚了。
      

  4.   

    MultiByteToWideChar(CP_UTF8,
     win98可以 win95不行
    WideCharToMultiByte(CP_ACP, 
      给出你的代码片段
      

  5.   

    unsigned char one[100]={0xe5,0x9b,0xbd,0xe5,0x86,0x85,0xe6,0x96,0xb0,0xe9,0x97,0xbb,0};
    unsigned short buf1[100];
    char buf2[100];
    int bk1;
    int bk2;
    int onelong=12;
    bk1=MultiByteToWideChar(CP_UTF8,0,(char *)one,onelong,buf1,12);
    buf1[bk1]=0;
    bk2=::WideCharToMultiByte(CP_ACP,WC_DEFAULTCHAR,buf1,bk1,buf2,100,NULL,NULL);