You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

83 lines
2.1 KiB
C

1 month ago
#pragma once
#include <windows.h>
#include <string>
int SEU_Rand(int ran); //<2F>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/************************************************************************/
/*
<EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><EFBFBD>ת
UTF-8 <===> GB2312
<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
| |
| |
<EFBFBD><EFBFBD> <EFBFBD><EFBFBD>
Unicode
UTF-8<EFBFBD><EFBFBD>GB2312<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>strlen<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UnicodeҪwsclen(p)*2=<EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>. <EFBFBD><EFBFBD>Ϊunicodeһ<EFBFBD><EFBFBD>ansi<EFBFBD>ַ<EFBFBD>Ҳռ2<EFBFBD>ֽ<EFBFBD>. һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳռ2<EFBFBD>ֽ<EFBFBD>.
*/
/************************************************************************/
//UTF-8<><38>GB2312<31><32>ת<EFBFBD><D7AA>,<2C><><EFBFBD>ص<EFBFBD>ָ<EFBFBD><D6B8>Ҫdelete
extern AFX_EXT_API char* UTF8_To_GB2312(const char* utf8);
extern AFX_EXT_API void UTF8_To_GB2312(const char* utf8, char* &gbOut);
//string<6E><67>
extern AFX_EXT_API std::string UTF8_To_GB2312(const std::string &utf8);
//GB2312<31><32>UTF-8<><38>ת<EFBFBD><D7AA>,<2C><><EFBFBD>ص<EFBFBD>ָ<EFBFBD><D6B8>Ҫdelete
extern AFX_EXT_API char* GB2312_To_UTF8(const char* gb2312);
//string<6E><67>
extern AFX_EXT_API std::string GB2312_To_UTF8(const std::string &gb2312);
//<2F><><EFBFBD><EFBFBD>2<EFBFBD><32>Ϊ<EFBFBD>˷<EFBFBD><CBB7><EFBFBD>֪<EFBFBD><D6AA>unicode<64><65><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><><D2B2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>wsclen<65><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD>unicode char*ָ<><D6B8>.<2E><>ͳ<EFBFBD><CDB3>unicode<64><65><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD>.x2<78><32><EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
extern AFX_EXT_API char* UTF8_To_Unicode(const char* utf8, int & len);
//string<6E><67>
extern AFX_EXT_API std::wstring UTF8_To_Unicode(const std::string &utf8);
extern AFX_EXT_API char* Unicode_To_UTF8(const char* unicode);
//string<6E><67>
extern AFX_EXT_API std::string Unicode_To_UTF8(const std::wstring &unicode);
//<2F><>ͬ<EFBFBD><CDAC>MByteToWChar. <20>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>MByteToWChar
extern AFX_EXT_API char* GB2312_To_Unicode(const char* gb2312, int & len);
//string<6E><67>
extern AFX_EXT_API std::wstring GB2312_To_Unicode(const std::string &gb2312);
//<2F><>ͬ<EFBFBD><CDAC>WCharToMByte <20>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>WCharToMByte
extern AFX_EXT_API char* Unicode_To_GB2312(const char* unicode);
//string<6E><67>
extern AFX_EXT_API std::string Unicode_To_GB2312(const std::wstring &unicode);
/*
<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>
ע<EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD>Ҫdelete
<EFBFBD><EFBFBD>ʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>unicode תansi/gb2312
*/
extern AFX_EXT_API CHAR* WCharToMByte(WCHAR* lpcwszStr);
/*
<EFBFBD><EFBFBD><EFBFBD>ֽ<EFBFBD>ת<EFBFBD><EFBFBD><EFBFBD>ַ<EFBFBD>
ע<EFBFBD><EFBFBD>ص<EFBFBD><EFBFBD>ַ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ú<EFBFBD>Ҫdelete
*/
extern AFX_EXT_API WCHAR* MByteToWChar(CHAR* lpcstr);
//
//static inline std::string convWith(const std::wstring &src);
//
//static inline std::wstring convWith(const std::string &src);