如何获取一个UNICODE字符串的编码? 现在有个需求是把UNICODE 字符串转成数字编码,再组合成字符串,如"好a123",假设好对应51 33 A对应 97 00转成"51339700110012001300"这个怎么进行? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我试了一下WideCharToMultiByte,对于"好"这种字符串可以转出来,但是对于"a",它转出来的是"97"不是"9700",难道我要一个字符一个字符地去转? a的utf16是0x0097,你转出来的没错。 用WideCharToMultiByte 转"好AA"转出来是"51339797"实际我想得到的是"513397009700" WCHAR wsz[]=L"好a123";int i;CHAR szHexString[MAX_PATH]="";CHAR * psrc=(CHAR *)wsz;CHAR * pdest=szHexString;for(i=0;i<(sizeof(wsz)-sizeof(WCHAR));i++) //将wsz逐字节转成16进制的字符格式{ pdest+=wsprintf(pdest, "%.2x", (BYTE)*(psrc+i));}*pdest='\0'; 你转错了,首先要使用MultiByteToWideChar将"好AA"转成utf16串,结果是一个WCHAR的串,然后按BYTE方式访问这个串就是97009700。 请教CRC校验算法的思路和源代码 设置按钮上的光标 为什么这样连不上? 单文档框架中如何将处理过的图像显示在其他界面(空间)上? 寻人写一Smtp代理服务器 请教高手!读windows事件日志内容的问题! 新手提问(打印) 高手求助!98下很奇怪的打印问题。基于对话框的。请高手进来!!! CDockablePane的隐藏显示问题 急救!!!不知道为什么,我在VC中使用gethostname获取机器名现在总不成功,每次都返回-1??(在线等待) 立此存照:从今天起利用业余时间专心学习VC++网络编程 关于条形码打印问题
我试了一下WideCharToMultiByte,对于"好"这种字符串可以转出来,但是对于"a",它转出来的是"97"不是"9700",难道我要一个字符一个字符地去转?
用WideCharToMultiByte 转"好AA"转出来是"51339797"
实际我想得到的是"513397009700"
int i;
CHAR szHexString[MAX_PATH]="";
CHAR * psrc=(CHAR *)wsz;
CHAR * pdest=szHexString;
for(i=0;i<(sizeof(wsz)-sizeof(WCHAR));i++) //将wsz逐字节转成16进制的字符格式
{
pdest+=wsprintf(pdest, "%.2x", (BYTE)*(psrc+i));
}
*pdest='\0';