zoukankan      html  css  js  c++  java
  • 用C函数来转换Unicode和ANSI文字

    用C函数来转换Unicode和ANSI文字

    char sChar[MAX_PATH];
    const WCHAR wChar[] = L"我的朋友";
    // 把wChar这个Unicode字符串转换成ANSI字符串,保存到sChar,并且返回ANSI的字符串大小,如果失败,则返回-1
      wcstombs(sChar, wChar, MAX_PATH);

    这样是运行不过不去的,总是返回-1。

    后来经人提醒,需要在调用wcstombs之前要先设置代码页:

    char sChar[MAX_PATH];
    const WCHAR wChar[] = L"我的朋友";

    // 设置代码页为默认代码页
      _tsetlocale(LC_ALL,_T(""));
    // 把wChar这个Unicode字符串转换成ANSI字符串,保存到sChar,并且返回ANSI的字符串大小,如果失败,则返回-1
      wcstombs(sChar, wChar, MAX_PATH);


    这样就可以了!不用调用烦人的WideCharToMultiByte!多好啊!
    相反的函数:mbstowcs,可以从ANSI转换到Unicode
  • 相关阅读:
    JavaScript作用域
    JavaScript数据类型
    CSS页面布局(二)
    CSS页面布局(一)
    CCS界面组件
    JavaScript面向对象设计
    python-序列化与反序列化
    python-常用模块
    python-re模块
    python-匿名函数
  • 原文地址:https://www.cnblogs.com/zjbtony/p/1278924.html
Copyright © 2011-2022 走看看