php iconv() utf-8 編碼字串轉中文GB2312出錯的問題
PHP iconv 函式轉gb2312的bug解決方法
問題:發現iconv在轉換字元"—"到gb2312時會出錯:
iconv( "UTF-8", "gb2312//IGNORE" , $data)
ignore的意思是忽略轉換時的錯誤,如果沒有ignore引數,所有該字元後面的字串都無法被儲存。
另外mb_convert_encoding沒有這個bug,所以最好的寫法是:
mb_convert_encoding($data, "gb2312", "UTF-8");
但是需要先enable mbstring 擴充套件庫。
一般情況下用 iconv,只有當遇到無法確定原編碼是何種編碼,或者iconv轉化後無法正常顯示時才用mb_convert_encoding 函式。
mb_convert_encoding 可以指定多種輸入編碼,它會根據內容自動識別,但是執行效率比iconv差太多;
1 |
$content = iconv( "GBK" , "UTF-8″, $content ); |
2 |
$content = mb_convert_encoding( $content , "UTF-8″, " GBK"); |
相關推薦
php iconv() utf-8 編碼字串轉中文GB2312出錯的問題
PHP iconv 函式轉gb2312的bug解決方法 問題:發現iconv在轉換字元"—"到gb2312時會出錯: iconv( "UTF-8", "gb2312//IGNORE" , $data) ignore的意思是忽略轉換時的錯誤,如果沒有ignore引數,所有該字元後面
php iconv() utf-8 編碼字串轉中文GB2312出錯的問題
PHP iconv 函式轉gb2312的bug解決方法 問題:發現iconv在轉換字元"—"到gb2312時會出錯: iconv( "UTF-8", "gb2312//IGNORE" , $data) ignore的意思是忽略轉換時的錯誤,如果沒有ignore引數,所有
Java實現將任何編碼方式的txt檔案以UTF-8編碼方式轉存
本文利用JDK中的BufferedReader和BufferedWriter實現將任何編碼方式的txt檔案以UTF-8編碼方式轉存。 UTF-8(8-bit Unicode Transformation Format)是一種針對Unicode的可變長度字元編碼,又稱萬國碼,由Ken Thompson於199
UTF-8編碼時,PHP如何正則匹配中文漢字?親測可用
這個方法親測可用,程式碼如下: <?php header('content-type:text/html;charset=utf-8'); $input = "^_^,
將assic編碼的json字串轉化為utf-8編碼的json字串
一、匯入模組 import urllib.request import urllib.parse import json 二、指定url,構造headers,構造請求引數 1.指定url url = 'http://fanyi.baidu.c
golang 八進位制 utf-8 編碼轉中文
當除錯程式,打印出變數的值時,有可能輸出的是八進位制 utf-8 編碼(尤其是 protobuf 變數) 例如:\346\200\241\346\200\241\346\200 這樣的字串如果作為字面量,go可以自動轉化, 但如果是從檔案或string中讀
utf-8編碼的字串轉成unicode(ucs-4)編碼的字串
本人第一篇原創部落格,盡力把程式碼註釋清楚,如有錯誤之處,敬請指出 typedef unsigned int mfchar_t;// 無符號的4位元組,用於容納UCS-4的一個字元 typedef std::basic_string<
php開啟mbstring擴展並設置支持utf-8編碼
tran ret utf-8 enc php asm 不一致 需要 Coding 前一段時間使用一個服務的接口,因為調用接口時使用的參數裏面有中文,調用接口會出現異常問題,後來才明白是編碼不一致的問題。然而,我本地項目開發使用的是utf-8,接口那邊也是需要utf-8的,那
編碼(ACSII unicod UTF-8)、QT輸出中文亂碼深入分析
們的 解決方法 ces size 虛擬 類型 col 機器 編碼規則 總結: 1. qt輸出中文亂碼原因分析 qt的編程環境默認是utf-8編碼格式(關於編碼見下文知識要點一); cout << "中文" << endl; 程序運行,程序並不認識
php 多語言(UTF-8編碼)導出Excel、CSV亂碼解決辦法之導出UTF-8編碼的Excel、CSV
csv tex 完整 多語 繁體 HP 項目 .html agen 轉自: https://www.cnblogs.com/kclteam/p/5278926.html 新項目,大概情況是這樣的:可能存在多國、不同語種使用者,比喻有中文、繁體中文,韓文、日本等等,開發
UTF-8編碼下'u7528u6237'轉換為中文漢字'用戶'
bsp 16px -a 設置圖 進行 開發 ngs color tin UTF-8編碼下‘\u7528\u6237‘轉換為中文‘用戶‘ 一、前言 有過多次,在開發項目中遇見設置文件編碼格式為UTF-8,但是打開該文件出現類似\u7528這樣的數據,看也看不懂,也不是
《Java》Java“字串操作”實際應用——形成GBK編碼和UTF-8編碼的文字檔案,通過其二進位制資料觀察兩種編碼的不同
一、任務目標 完成一個java application應用程式,可以把GBK編碼的漢字字串與UTF-8編碼的漢字字串相互轉換。並配合寫檔案操作形成不同編碼格式的文字檔案,可以通過其二進位制資料觀察兩種編碼的不同。 二、程式設計思路 博主將“程式設計思路”以流程
對於mysql資料庫中文亂碼問題的解決(在所有的編碼都是utf-8的情況下中文亂碼)
在寫jdbc連結mysqll資料庫時,向其中插入中文資料出現亂碼。查看了所有的配置,都是utf-8編碼,my.ini配置檔案也修改好了,還出現這樣的亂碼,實屬不應該。 在各種部落格論壇查詢,都是修改資料庫的編碼的套路,其中也不乏有在連線資料庫的連結url中加編碼的,比如:“jdbc:mysql:
log4cplus:如何在windows下使用log4cplus以UTF-8編碼輸出中文
如果Visual C++中字符集設定的是Unicode,如果想使用GBK格式讓log4cplus輸出中文,可以在log4cplus.properties配置檔案中設定Local屬性,例如: log4cplus.appender.ALL_MSGS.Append
Latex中文utf-8編碼的三種方式
我們知道Latex一般用CJK和CTEX巨集包支援中文編輯,CJK和CTEX的預設編碼是GBK,而windows下的默然編碼就是GBK,因此CJK和CTEX不需要特殊配置就可以直接支援中文Latex編譯,只需要用GBK編碼儲存檔案即可。但是如果把檔案的字元編碼換成現在更加普
Python3編碼問題 Unicode utf-8 bytes互轉
為什麼需要本文,因為在對接某些很老的介面的時候,需要傳遞過去的是16進位制的hex字串,並且要求對傳的字串做編碼,這裡就介紹了utf-8 Unicode bytes 等等。 #英文使用utf-8
Asp.net utf-8 編碼中文亂碼完全解決方案
Unicode 編碼正逐漸成為多語言支援的最通用解決方案。採用 Unicode 編碼的中文網頁能在各種平臺、各種類的瀏覽器上都得到很好的相容。utf-8 是 Unicode 的一種儲存/交換實現方式。對於不同數值範圍的 Unicode 碼,它採用變長的方式來編碼:所有
UTF-8編碼下,二進位制和漢字互轉
<?php function StrToBin($str){ $arr = preg_split('/(?<!^)(?!$)/u', $str); foreach($arr as &$v){ $temp = unpa
PHP實現Unicode和Utf-8編碼相互轉換
Unicode和Utf-8編碼的區別 Unicode是一個字符集,定義了字元與數字之間的對應關係,在Unicode中:漢字“字”對應的數字是23383(十進位制),十六進位制表示為5B57。在Unicode中,我們有很多方式將數字23383表示成程式中的資料,包括:UT
python中遇到包含UTF-8編碼中文的列表或字典的輸出的解決方法
今天,在除錯程式時,遇到了一個編碼問題,折騰了好久,看到了一篇部落格:點選開啟連結 才解決了問題,現在摘錄如下,以免今後遇到同樣的問題再次折騰。 在python 下面一個包含中文字串的列表(lis