[英]How to decode characters utf-8 in iso 8859-1 with json in javascript?
[英]how to convert ISO 8859-1 Characters to UTF-8
我使用CURL從另一個站點獲取內容,但是我不知道為什么它會自動從UTF-8轉換為ISO 8859-1,如下所示:
網站:abc.com:
CửaHàngChip Chip:RộnràngGiGiángsinhvớinhữngvậtphẩmtrangtríNoelđầymàusắccủaCHIPCHIP GIFT SHOP
但是,當我使用CURL從該網站獲取內容時,我得到了關注:
Cửa Hàng Chip Chip: Rộn ràng đón Giáng sinh với những vật phẩm trang trí Noel đầy màu sắc của CHIPCHIP GIFT SHOP
那么如何將其轉換為UTF-8?
我建議使用iconv
。
iconv --list
提供所有已知編碼的列表,然后可以使用iconv -f FROM_ENCODING -t TO_ENCODING
進行轉換。 它也可以從stdin中讀取,因此可以插入curl
。
但是關於您的問題的評論:似乎文件作者並不在乎使用正確的編碼,而是決定堅持使用(舊樣式?) ä
和其他東西。
將您的字符串放入變量中並使用以下函數。
$var = "";
echo utf8_encode($var);
從您粘貼的行來看,問題似乎出在HTML實體上,而不是字符編碼上。 編碼的字符對我來說很好。
您需要將這些HTML實體轉換為編碼的char。 使用哪種工具將取決於您的環境或編程語言。 我不認為僅靠CURL就可以做到。
PHP具有htmlspecialchars_decode() 。 HTMLParser模塊中的Python unescape() 。
curl不轉換任何內容,按原樣下載內容
您所看到的是字符實體,有效的html,以及將瀏覽器轉換為可讀形式的瀏覽器。
您可以通過在瀏覽器中打開curl保存的文件來進行檢查。 它看起來像實時頁面。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.