欢迎光临
我们一直在努力

UnicodeToUTF8-.NET教程,.NET Framework

建站超值云服务器,限时71元/月

convertunicodetoutf8(const wchar *wstrin, byte *buff,int vlen)
{
    assert(wstrin);
    int wlen=wcslen(wstrin);
    int i=0;
#define putchar(a)     buff[i++]=(byte)a;

    for(int j=0;(dword)j<wcslen(wstrin);j++)
    {
        assert(i<vlen);
        wchar c=wstrin[j];
        if (c < 0x80)
        {
            putchar (c);
        }
        else if (c < 0x800)
        {
            putchar (0xc0 | c>>6);
            putchar (0x80 | c & 0x3f);
        }
        else if (c < 0x10000)
        {
            putchar (0xe0 | c>>12);
            putchar (0x80 | c>>6 & 0x3f);
            putchar (0x80 | c & 0x3f);
        }
        else if (c < 0x200000)
        {
            putchar (0xf0 | c>>18);
            putchar (0x80 | c>>12 & 0x3f);
            putchar (0x80 | c>>6 & 0x3f);
            putchar (0x80 | c & 0x3f);
        }
    }
}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » UnicodeToUTF8-.NET教程,.NET Framework
分享到: 更多 (0)