字符串转BYTE数组
CString strHex=L"",strOut = L"";
CHAR info[10] = "你好"
INT len = strlen(info)*sizeof(CHAR);
DWORD dwX = (DWORD)&info; //获取内存中的地址
for(INT i=0;i< len;i++)
{
BYTE a = *(BYTE*)(dwX+i); //获取内存中的存放的一个16进制的字节
strHex.Format(TEXT("%02X"), a);
strOut += strHex;
}
//打印
::OutputDebugStringW(strOut);
------------------------------
打印出来的也是正常的,但是遇到一个新的问题,我在改变一个第三方程序界面的时候,注入直接修改字符串内存,英文数字都正常,中文就是乱码,用CE看了下正常的字符串的BYTE数组,用上面这个生成出来的BYTE数组还是乱码,他是一个汉字大概3个字节这样的BYTE数组。
网上唯一找到一个字符串转16进制,符合需求的就是:http://www.bejson.com/convert/ox2str/ 1个汉字三个16进制,
本来想看下他的算法,不过他是用AJAX调用的,
CHAR info[10] = "你好"
INT len = strlen(info)*sizeof(CHAR);
DWORD dwX = (DWORD)&info; //获取内存中的地址
for(INT i=0;i< len;i++)
{
BYTE a = *(BYTE*)(dwX+i); //获取内存中的存放的一个16进制的字节
strHex.Format(TEXT("%02X"), a);
strOut += strHex;
}
//打印
::OutputDebugStringW(strOut);
------------------------------
打印出来的也是正常的,但是遇到一个新的问题,我在改变一个第三方程序界面的时候,注入直接修改字符串内存,英文数字都正常,中文就是乱码,用CE看了下正常的字符串的BYTE数组,用上面这个生成出来的BYTE数组还是乱码,他是一个汉字大概3个字节这样的BYTE数组。
网上唯一找到一个字符串转16进制,符合需求的就是:http://www.bejson.com/convert/ox2str/ 1个汉字三个16进制,
本来想看下他的算法,不过他是用AJAX调用的,
...全文
相关推荐
Java中字符串与byte数组之间的相互转换
Java语言中字符串类型和字节数组类型相互之间的转换经常发生,网上的分析及代码也比较多,这篇文章将主要介绍Java中字符串与byte数组之间的相互转换,有需要的朋友们可以参考借鉴,下面来一起看看吧。
java实现图片转base64字符串 java实现base64字符串转图片
主要为大家详细介绍了java实现图片转base64字符串,java实现base64字符串转图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
16进制与字符串、字节数组之间的转换
16进制与字符串、字节数组之间的转换 16进制与字符串、字节数组之间的转换
Android 实现图片转二进制流及二进制转字符串
主要介绍了Android 实现图片转二进制流及二进制转字符串,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
String(含Hex)与Byte数组互相转换[代码]
1.字符串(String)与Byte[] 的互相转换. 2.Hex(String形式)与Byte[] 的互相转换.


