計算機的底層是以二進位制編碼的方式對資料進行儲存的,不論是什麼形式的內容,最終都是以二進位制的格式儲存的。
這裡有兩個概念,編碼和解碼。編碼:按一定的規則,將字元轉換為二進位制編碼的過程。解碼:依據一定的規則,將二進位制編碼轉換為字元的過程。
這裡有乙個問題,就是這個規則到底是什麼?通常,我們所說的字符集就是這個規則。常見的字符集有ascii、gbk、gb2312、utf-8等等。ascii是由美國人發明的,包含七位,能儲存128個字元。gbk和gb2312都是國標碼,中文系統下的預設編碼是gb2312,而utf-8是全球通用的萬國碼。
所以,產生亂碼的根本原因就是編碼和解碼使用的字符集不一致。你的編碼集採用的是utf-8,但是瀏覽器的解碼集採用的是gb2312,這個時候自然就會出現亂碼的情況。
最簡單的辦法就是在**中新增meta標籤,告訴瀏覽器你採用的是什麼字符集。
meta是乙個自結束標籤,和普通標籤不一樣,普通標籤是成對出現的,有開始有結束。在編寫自結束標籤時,可以在開始標籤中新增乙個/。
示例如下:
<
!doctype html>
"utf-8"
/>
這是乙個網頁<
/title>
<
/head>
這是乙個網頁
<
/h1>
<
/body>
<
/html>
當你在記事本中編寫html**時,即使你沒有新增meta標籤,用瀏覽器開啟時也不會出現亂碼,這是因為記事本的編碼格式為ansi,即自動編碼格式,根據系統的語言自動進行編碼。
在以後的開發過程中,推薦使用utf-8字符集。
servlet學習之 亂碼問題
解決servlet jsp中亂碼問題 1.request.setcharacterencoding utf 8 這種方式解決的是訊息體中的中文編譯碼問題 post方式引數存放在請求資料報的訊息體中。故如果表單以post方式提交到伺服器端,表單中包含中文,通過這種方式來解決亂碼問題 這句話應該位於re...
08 python之網路爬蟲之亂碼問題
亂碼問題有三種解決方式,下面我們通過乙個示例進行理解 示例 爬取4k美女桌布中的 import requests from lxml import etree import os from urllib import request if not os.path.exists 4kmeimei os...
C 中訪問URL之亂碼問題解決
今天在asp.net下實現乙個發簡訊的功能時需要呼叫現有的乙個url,並從本地取引數新增到url上,然後請求此url。但引數中含有漢字 中的url引數中含有漢字,在沒有使用urlencode 函式時直接請求,使用者得到的是亂碼。問題的原因和編碼沒有多大關係。問題在於url的格式 url中一般使用小於...