/**
* @param cbCharSize: lpCharStr的字节个数,可以设为-1,如果以null结束。
* @param cchWCharCnt: lpWCharStr的字符个数
*
* @return: 如果成功,返回写入lpWCharStr的字符个数;如果成功并且cchWiCharCnt==0,
* 返回lpWideCharStr缓存区需要的字符个数。
* 失败返回0。
*
**/
DWORD CharToWChar_t( LPSTR lpCharStr, DWORD cbCharSize, LPWSTR lpWCharStr, DWORD cchWCharCnt)
{
return MultiByteToWideChar( CP_ACP, 0, lpCharStr, cbCharSize, lpWCharStr, cchWCharCnt );
}
/**
* @param cchWCharCnt:字符个数,可以设为-1,如果以null结束。
* @param cbCharSize:lpCharStr串的字节大小。
* @return: 如果成功,返回写入lpCharStr的字符个数;如果成功并且cbCharSize==0,
* 返回lpCharStr缓存区需要的字节个数。
* 失败返回0。
*
**/
DWORD WChar_tToChar( LPWSTR lpWCharStr, DWORD cchWCharCnt, LPSTR lpCharStr, DWORD cbCharSize)
{
return WideCharToMultiByte(CP_ACP, 0, lpWCharStr, cchWCharCnt, lpCharStr, cbCharSize, NULL, NULL);
}
* @param cbCharSize: lpCharStr的字节个数,可以设为-1,如果以null结束。
* @param cchWCharCnt: lpWCharStr的字符个数
*
* @return: 如果成功,返回写入lpWCharStr的字符个数;如果成功并且cchWiCharCnt==0,
* 返回lpWideCharStr缓存区需要的字符个数。
* 失败返回0。
*
**/
DWORD CharToWChar_t( LPSTR lpCharStr, DWORD cbCharSize, LPWSTR lpWCharStr, DWORD cchWCharCnt)
{
return MultiByteToWideChar( CP_ACP, 0, lpCharStr, cbCharSize, lpWCharStr, cchWCharCnt );
}
/**
* @param cchWCharCnt:字符个数,可以设为-1,如果以null结束。
* @param cbCharSize:lpCharStr串的字节大小。
* @return: 如果成功,返回写入lpCharStr的字符个数;如果成功并且cbCharSize==0,
* 返回lpCharStr缓存区需要的字节个数。
* 失败返回0。
*
**/
DWORD WChar_tToChar( LPWSTR lpWCharStr, DWORD cchWCharCnt, LPSTR lpCharStr, DWORD cbCharSize)
{
return WideCharToMultiByte(CP_ACP, 0, lpWCharStr, cchWCharCnt, lpCharStr, cbCharSize, NULL, NULL);
}
字符编码转换详解

本文详细介绍了如何使用CharToWChar_t和WChar_tToChar函数进行字符编码的转换。包括从多字节字符集到宽字符集的转换,以及反之亦然的过程。文章提供了具体的参数说明及返回值解释,有助于理解不同字符编码之间的转换机制。
831

被折叠的 条评论
为什么被折叠?



