Chinaunix首页 | 论坛 | 博客
  • 博客访问: 445960
  • 博文数量: 96
  • 博客积分: 6045
  • 博客等级: 大校
  • 技术积分: 906
  • 用 户 组: 普通用户
  • 注册时间: 2007-07-03 11:29
文章分类

全部博文(96)

文章存档

2014年(1)

2012年(22)

2011年(23)

2010年(31)

2008年(1)

2007年(18)

分类: C/C++

2011-06-13 15:49:49

将ANSI转换到Unicode
(1)通过L这个宏来实现,例如:   CLSIDFromProgID(   L "MAPI.Folder ",&clsid);
(2)通过MultiByteToWideChar函数实现转换,例如:
char   *szProgID   =   "MAPI.Folder ";
WCHAR   szWideProgID[128];
CLSID   clsid;
long   lLen   =   MultiByteToWideChar(CP_ACP,0,szProgID,strlen(szProgID),szWideProgID,sizeof(szWideProgID));
szWideProgID[lLen]   =   '\0 ';  
(3)通过A2W宏来实现,例如:  
USES_CONVERSION;  
CLSIDFromProgID(A2W(szProgID),&clsid);  

将Unicode转换到ANSI
(1)使用WideCharToMultiByte,例如:
//   假设已经有了一个Unicode   串   wszSomeString...  
char   szANSIString   [MAX_PATH];  
WideCharToMultiByte(CP_ACP,WC_COMPOSITECHECK,wszSomeString,-1,szANSIString,   sizeof(szANSIString),NULL,NULL);  
(2)使用W2A宏来实现,例如:
USES_CONVERSION;
pTemp=W2A(wszSomeString);
阅读(1143) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~