很急的说
解决方案 »
- MFC 截图问题
- C# 的一段代码 转换为VC++ 应该怎么写 初学请指教!
- 关于findfile和 findnextfile
- 请教C++ error C2679 错误
- MAKEINTRESOURCE的问题
- ADO数据库操作insert时候有内存泄漏问题(有代码)
- 各位大侠,有没有把简体,转换成繁体的工具,求救亚!不够再加分
- 在ocx中如何使用一个ActiveX,不算使用IMPORT,还有没有别的方法呢?(大送100分)
- 我应该做什么?
- 请教在VC平台上实现视频图像去隔行效应的算法代码?
- 声明 map<int,char> PhoneMap, 会产生几十 worning , 有什么办法使编译器不产生这些警告 ?
- 简单问题,轻松一百分拿走,在线等待!
// 反向转换是类似的.
// 注意直接从简体-->big5不能做到一一对应.会有很多?出现,
// 故此需要先转成繁体.再转成big5.
// 我感觉这种方法应当和winnt或office里提供的繁简或字符集互转是一致的.
#include "stdafx.h"
#include
#include
#include
#include
#include
using namespace std;void j2f(const string &s)
{
int n=s.length ();
int r=LCMapString(
MAKELCID(MAKELANGID(LANG_CHINESE,SUBLANG_CHINESE_SIMPLIFIED),SORT_CHINESE_PRC),
LCMAP_TRADITIONAL_CHINESE,
s.c_str (),s.length (),NULL,0);
if (!r) cout <<"error :"< char *ft=new char[r+1];
r=LCMapString(
MAKELCID(MAKELANGID(LANG_CHINESE,SUBLANG_CHINESE_SIMPLIFIED),SORT_CHINESE_PRC),
LCMAP_TRADITIONAL_CHINESE,
s.c_str (),s.length (),ft,r+1);//这个api搞掂简体转繁体,下面会打印繁体出来
if (r) {
ft[r]=0;
cout< wchar_t *pws=new wchar_t[r+1];
int r1=MultiByteToWideChar(936,0,ft,r,pws,r+1);
BOOL f=FALSE;
r1=WideCharToMultiByte(950,0,pws,r1,ft,r+1,"?",&f);//代码页切换搞掂gb->big5
ft[r1]=0;
cout< for (int i=0;i cout<<"";
printf("0x%02x ",(BYTE)ft[i]);
}
cout<<")"< delete [] pws;
} delete []ft;
}//从标准输入简体国标-->big5繁体标准输出,输入两个空行退出
int main(int argc, char* argv[])
{ for(;;){
char line[1024];
cin.getline (line,sizeof(line));
string s(line);
if (!cin ||s.length ()==0) break;
j2f(s);
}
_getch();
return 0;
}