前端基礎之亂碼問題

2021-10-05 18:39:30 字數 837 閱讀 3945

計算機的底層是以二進位制編碼的方式對資料進行儲存的,不論是什麼形式的內容,最終都是以二進位制的格式儲存的。

這裡有兩個概念,編碼和解碼。編碼:按一定的規則,將字元轉換為二進位制編碼的過程。解碼:依據一定的規則,將二進位制編碼轉換為字元的過程。

這裡有乙個問題,就是這個規則到底是什麼?通常,我們所說的字符集就是這個規則。常見的字符集有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中一般使用小於...