当前位置: 首页 > news >正文

专业网站建设哪家权威seo学校培训课程

专业网站建设哪家权威,seo学校培训课程,python基础教程书籍,重庆口碑最好的装修公司文章目录 字符编码问题编码转换问题ANSI转UnicodeUnicode转ANSIUtf8转 ANSIutf8 转UnicodeANSI 转UTF-8Unicode 转 UTF-8 全部代码 字符编码问题 Windows API 函数 MessageBoxA:MessageBox 内部实现,字符串编码(ANSI)转换成了Unicode,在调用MessageboxW MessageBox:…

文章目录

  • 字符编码问题
  • 编码转换问题
    • ANSI转Unicode
    • Unicode转ANSI
    • Utf8转 ANSI
    • utf8 转Unicode
    • ANSI 转UTF-8
    • Unicode 转 UTF-8
  • 全部代码

字符编码问题

在这里插入图片描述

Windows API 函数
MessageBoxA:MessageBox 内部实现,字符串编码(ANSI)转换成了Unicode,在调用MessageboxW
MessageBox:是一个宏定义
MessageBoxA(NULL,"Hello","提示",MB_OK);
MessageBoxW(NULL,L"Hello",L"提示",MB_OK);

编码转换问题

ANSI转Unicode

//ANSI转Unicode
wchar_t* CCharset::AnsiToUnicode(const char* str)
{if (m_wstr)//安全{delete m_wstr;m_wstr = NULL;}DWORD dwSize=::MultiByteToWideChar(CP_ACP,0,str,-1,NULL,0);//求宽字符的大小m_wstr = new wchar_t[dwSize];::MultiByteToWideChar(CP_ACP, 0, str, -1, m_wstr, dwSize);return m_wstr;
}

Unicode转ANSI

//Unicode转ANSI
char * CCharset::UnicodeToAnsi(const wchar_t * wstr)
{if (m_str){delete m_str;m_str = NULL;}DWORD dwSize=WideCharToMultiByte(CP_ACP, 0, wstr, -1,NULL,0,NULL,NULL);m_str = new char[dwSize];::WideCharToMultiByte(CP_ACP, 0, wstr, -1, m_str, dwSize, NULL, NULL);return m_str;
}

Utf8转 ANSI

char * CCharset::Utf8ToAnsi(const char * str)
{if (m_wstr){delete[] m_wstr;m_wstr = NULL;}if (m_str){delete[] m_str;m_str = NULL;}//UTF-8 转Unicodem_wstr= Utf8ToUnicode(str);//Unicode 转ANSIm_str= UnicodeToAnsi(m_wstr);return m_str;
}

utf8 转Unicode

wchar_t* CCharset::Utf8ToUnicode(const char * str)
{if (m_wstr){delete m_wstr;m_wstr = NULL;}DWORD dwSize=MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL, 0);m_wstr = new wchar_t[dwSize];memset(m_wstr, 0, dwSize*sizeof(wchar_t));//清空内存MultiByteToWideChar(CP_UTF8, 0, str, -1, m_wstr, dwSize);return m_wstr;
}

ANSI 转UTF-8

char* CCharset::AnsitoUtf8(const char* str)
{if (m_wstr){delete[] m_wstr;m_wstr = NULL;}if (m_utf8){delete[] m_utf8;m_utf8 = NULL;}//Ansi 转Unicodem_wstr= AnsiToUnicode(str);//Unicode 转UTF-8m_utf8=UnicodeToUtf8(m_wstr);return m_utf8;
}

Unicode 转 UTF-8

char * CCharset::UnicodeToUtf8(const wchar_t * wstr)
{if (m_utf8){delete[] m_utf8;m_utf8 = NULL;}DWORD dwSize=WideCharToMultiByte(CP_UTF8, 0, wstr, -1, NULL, 0, NULL, NULL);m_utf8 = new char[dwSize];memset(m_utf8,0,dwSize);//清空内存WideCharToMultiByte(CP_UTF8, 0, wstr, -1, m_utf8, dwSize, NULL, NULL);return m_utf8;
}

全部代码

CCharset.h

#pragma once
class CCharset
{private:wchar_t* m_wstr;char* m_str;char* m_utf8;
public:CCharset();~CCharset();//ANSI转Unicodewchar_t* AnsiToUnicode(const char* str);//Unicode转ANSIchar* UnicodeToAnsi(const wchar_t* wstr);//UTF8 转ANSIchar* Utf8ToAnsi(const char* str);//ANSI转UTF - 8char* AnsitoUtf8(const char* str);//Unicode 转 UTF-8char* UnicodeToUtf8(const wchar_t* wstr);//UTF-8转Unicodewchar_t* Utf8ToUnicode(const char* str);};

CCharset.cpp

#include "pch.h"
#include "CCharset.h"CCharset::CCharset()
{m_wstr = NULL;m_str = NULL;m_utf8 = NULL;
}CCharset::~CCharset()
{if (m_wstr){delete m_wstr;m_wstr = NULL;}if (m_str){delete m_str;m_str = NULL;}if (m_utf8){delete[] m_utf8;m_utf8 = NULL;}
}//ANSI转Unicode
wchar_t* CCharset::AnsiToUnicode(const char* str)
{if (m_wstr)//安全{delete[] m_wstr;m_wstr = NULL;}DWORD dwSize=::MultiByteToWideChar(CP_ACP,0,str,-1,NULL,0);//求宽字符的大小m_wstr = new wchar_t[dwSize];::MultiByteToWideChar(CP_ACP, 0, str, -1, m_wstr, dwSize);return m_wstr;
}//Unicode转ANSI
char * CCharset::UnicodeToAnsi(const wchar_t * wstr)
{if (m_str){delete[] m_str;m_str = NULL;}DWORD dwSize=WideCharToMultiByte(CP_ACP, 0, wstr, -1,NULL,0,NULL,NULL);//求字符的大小m_str = new char[dwSize];::WideCharToMultiByte(CP_ACP, 0, wstr, -1, m_str, dwSize, NULL, NULL);return m_str;
}char * CCharset::Utf8ToAnsi(const char * str)
{if (m_wstr){delete[] m_wstr;m_wstr = NULL;}if (m_str){delete[] m_str;m_str = NULL;}//UTF-8 转Unicodem_wstr= Utf8ToUnicode(str);//Unicode 转ANSIm_str= UnicodeToAnsi(m_wstr);return m_str;
}char* CCharset::AnsitoUtf8(const char* str)
{if (m_wstr){delete[] m_wstr;m_wstr = NULL;}if (m_utf8){delete[] m_utf8;m_utf8 = NULL;}//Ansi 转Unicodem_wstr= AnsiToUnicode(str);//Unicode 转UTF-8m_utf8=UnicodeToUtf8(m_wstr);return m_utf8;
}//Unicode 转 UTF-8
char * CCharset::UnicodeToUtf8(const wchar_t * wstr)
{if (m_utf8){delete[] m_utf8;m_utf8 = NULL;}DWORD dwSize=WideCharToMultiByte(CP_UTF8, 0, wstr, -1, NULL, 0, NULL, NULL);m_utf8 = new char[dwSize];memset(m_utf8,0,dwSize);//清空内存WideCharToMultiByte(CP_UTF8, 0, wstr, -1, m_utf8, dwSize, NULL, NULL);return m_utf8;
}//utf8 转Unicode
wchar_t* CCharset::Utf8ToUnicode(const char * str)
{if (m_wstr){delete m_wstr;m_wstr = NULL;}DWORD dwSize=MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL, 0);m_wstr = new wchar_t[dwSize];memset(m_wstr, 0, dwSize*sizeof(wchar_t));//清空内存MultiByteToWideChar(CP_UTF8, 0, str, -1, m_wstr, dwSize);return m_wstr;
}
http://www.hkea.cn/news/224845/

相关文章:

  • 企业网站建立答辩问题百度怎么发布广告
  • 温州快建网站地推拉新接单网
  • 濉溪县城乡建设委员会燃气办网站热狗网站排名优化外包
  • 网站能不能自己做免费的seo教程
  • 湖南的商城网站建设优化教程网下载
  • 做网站需要哪些工程师西安seo诊断
  • tp做的网站封装成app2023北京封控了
  • 增城做网站要多少钱推广普通话手抄报
  • 石家庄网站系统开发智能搜索引擎
  • 迅速网站网络营销平台推广方案
  • 学前端要逛那些网站微信引流主动被加软件
  • 韩国flash网站免费手机网站建站平台
  • 东莞做网站卓诚网络昆明长尾词seo怎么优化
  • WordPress个性萌化插件郑州seo优化哪家好
  • 专业手机移动网站建设免费的seo优化
  • 西安网站建设王永杰域名注册 万网
  • 网站营销优化方案北京做的好的seo公司
  • 企业网站排名提升软件优化南宁seo优化
  • 创意合肥网站建设杭州seo公司排名
  • 网站专题页是什么中国十大关键词
  • 五月天做网站网络策划与营销
  • 高校网站如何建设论文谷歌官网下载
  • 做网站内容软件个人网站怎么做
  • 收废铁的做网站有优点吗海南百度推广开户
  • wordpress 二维码插件下载信阳搜索引擎优化
  • 个人网站二级域名做淘宝客企业推广策略
  • 厦门做网站seo的seo服务公司招聘
  • 安徽池州做企业网站百度搜索官方网站
  • 芜湖商城网站建设青岛百度快速优化排名
  • 我找伟宏篷布我做的事ko家的网站seoul怎么读