如何將gbk編碼轉(zhuǎn)換utf8格式
發(fā)表時(shí)間:2024-02-23 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]apache 字符集 GB 2312mysql 字符集 GBK現(xiàn)要從 mysql 中提出信息(GBK) 寫(xiě)入到 XML 中XML中的編碼格式是 UTF-8那么,如何將GBK編碼成 UTF8 ??詳細(xì)介紹:前一陣子見(jiàn)到了qiushuiwuhen君的關(guān)于gbk,unicode,big5的轉(zhuǎn)換的文章 但...
apache 字符集 GB 2312
mysql 字符集 GBK
現(xiàn)要從 mysql 中提出信息(GBK) 寫(xiě)入到 XML 中
XML中的編碼格式是 UTF-8
那么,如何將GBK編碼成 UTF8 ??
詳細(xì)介紹:
前一陣子見(jiàn)到了qiushuiwuhen君的關(guān)于gbk,unicode,big5的轉(zhuǎn)換的文章
但是多少有一些不太大的問(wèn)題
于是我設(shè)計(jì)了一個(gè)負(fù)責(zé)字符轉(zhuǎn)換的類(lèi),修正了其中的一些不足,增加了部分功能,以后我會(huì)不斷擴(kuò)充該類(lèi),來(lái)支持更多的字符集
增加了如下幾點(diǎn):
unicode->gbk 符號(hào)部分的轉(zhuǎn)換
歐元符(的識(shí)別
big5,Unicode,GBK之間的相互轉(zhuǎn)換,前提是只轉(zhuǎn)換共同的字符集部分,
使用說(shuō)明:
暫時(shí)程序支持以下字符編碼方式:
GBK,BIG5,UTF-16BE(Unicode big-endian字節(jié)順序),UTF-16LE(Unicode little-endian字節(jié)順序),UTF-8
默認(rèn)輸入編碼方式為GBK,默認(rèn)輸出編碼方式為UTF-16BE;
該類(lèi)別提供兩個(gè)函數(shù)用來(lái)修改輸入和輸出編碼方式:
修改輸入編碼方式 boolean SetGetEncoding(string $GetEncoding)
修改輸出編碼方式 boolean SetToEncoding(string $ToEncoding)
函數(shù)參數(shù)只能使用上述5種編碼方式,區(qū)分大小寫(xiě),如GBK不能寫(xiě)成gbk
如果設(shè)置成功,返回true,如果使用了錯(cuò)誤的編碼名,返回false,并現(xiàn)實(shí)錯(cuò)誤信息
函數(shù)
string EncodeString(string $String)
負(fù)責(zé)進(jìn)行字符編碼轉(zhuǎn)換,返回轉(zhuǎn)換后的字符串
使用前,請(qǐng)將var $FilePath=\"\"變量該為該程序文件的絕對(duì)路徑,否則將會(huì)找不到數(shù)據(jù)文件
例子:
將gbk編碼的字符串轉(zhuǎn)化為UTF-8編碼:
$s=\"GBK編碼\";
$CharEncoding=new Encoding();
$CharEncoding->SetGetEncoding(\"GBK\") die(\"編碼名錯(cuò)誤\");
$CharEncoding->SetToEncoding(\"UTF-8\") die(\"編碼名錯(cuò)誤\");
echo $CharEncoding->EncodeString($s);
在瀏覽器中使用UTF-8編碼察看,將會(huì)看到正確的字符.
附件: encoding.zip