简繁字体的互相转换

************************************简繁字体的互相转换***********************************
//文件名:Simplified2Traditional.h
//
//功能:实现繁简字体的互相转换
//
//作者:zngsai
//
//时间:2009.05.02
*****************************************************************************************/
/*****************************************************************************************
//函数名:JtoF
//功能:简体到繁体的字符串转换
//参数1:sSrc[] - char型,简体字符串
//参数2:nLength - unsigned long型,简体字符串长度
//返回值:char*型,转换后的繁体字符串
****************************************************************************************
*/
char* JtoF(char sSrc[],unsigned long nLength)
{
char* sDes = new char[nLength];
LCMapString(MAKELCID(MAKELANGID(LANG_CHINESE,SUBLANG_CHINESE_SIMPLIFIED),SORT_CHINESE_PRC),
LCMAP_TRADITIONAL_CHINESE,(LPCTSTR)sSrc,nLength,sDes,nLength);
//此API可将简体转化为繁体

return sDes;
}
/*****************************************************************************************
//函数名:FtoJ
//功能:繁体到简体的字符串转换
//参数1:sSrc[] - char型,繁体字符串
//参数2:nLength - unsigned long型,繁体字符串长度
//返回值:char*型,转换后的简体字符串
****************************************************************************************
*/
char* FtoJ(char sSrc[],unsigned long nLength)
{
char* sDes = new char[nLength];
LCMapString(MAKELCID(MAKELANGID(LANG_CHINESE,SUBLANG_CHINESE_SIMPLIFIED),SORT_CHINESE_PRC),
LCMAP_SIMPLIFIED_CHINESE,(LPCTSTR)sSrc,nLength,sDes,nLength);
//此API可将繁体转化为简体

return sDes;
}
/*****************************************************************************************
//函数名:File_JtoF
//功能:简体到繁体的文本转换
//参数:lpszFileName - LPCTSTR型,简体字符文本
//返回值:BOOL型,返回TRUE表示转换成功,FALSE表示失败
****************************************************************************************
*/
BOOL File_JtoF(LPCTSTR lpszFileName)
{
CFile
* pFile;
DWORD nFileaLen;
char* pData;
pFile 
= new CFile;
if(!pFile->Open(lpszFileName,CFile::shareDenyNone|CFile::modeReadWrite))
return FALSE;

nFileaLen 
= pFile->GetLength();
pData 
= new char[nFileaLen];

pFile
->SeekToBegin();
pFile
->Read(pData,nFileaLen);

pData 
= JtoF(pData,nFileaLen);

pFile
->SeekToBegin();
pFile
->Write(pData,nFileaLen);

return TRUE;
}
/*****************************************************************************************
//函数名:File_FtoJ
//功能:繁体到简体的文本转换
//参数:lpszFileName - LPCTSTR型,繁体字符文本
//返回值:BOOL型,返回TRUE表示转换成功,FALSE表示失败
****************************************************************************************
*/
BOOL File_FtoJ(LPCTSTR lpszFileName)
{
CFile
* pFile;
DWORD nFileaLen;
char* pData;
pFile 
= new CFile;
if(!pFile->Open(lpszFileName,CFile::shareDenyNone|CFile::modeReadWrite))
return FALSE;

nFileaLen 
= pFile->GetLength();
pData 
= new char[nFileaLen];

pFile
->SeekToBegin();
pFile
->Read(pData,nFileaLen);

pData 
= FtoJ(pData,nFileaLen);

pFile
->SeekToBegin();
pFile
->Write(pData,nFileaLen);

return TRUE;


原文地址:https://www.cnblogs.com/tt_mc/p/1674266.html