創(chuàng)新互聯(lián)擁有10余年成都網(wǎng)站建設(shè)工作經(jīng)驗(yàn),為各大企業(yè)提供網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)服務(wù),對(duì)于網(wǎng)頁(yè)設(shè)計(jì)、PC網(wǎng)站建設(shè)(電腦版網(wǎng)站建設(shè))、app軟件定制開(kāi)發(fā)、wap網(wǎng)站建設(shè)(手機(jī)版網(wǎng)站建設(shè))、程序開(kāi)發(fā)、網(wǎng)站優(yōu)化(SEO優(yōu)化)、微網(wǎng)站、域名與空間等,憑借多年來(lái)在互聯(lián)網(wǎng)的打拼,我們?cè)诨ヂ?lián)網(wǎng)網(wǎng)站建設(shè)行業(yè)積累了很多網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷經(jīng)驗(yàn),集策劃、開(kāi)發(fā)、設(shè)計(jì)、營(yíng)銷、管理等網(wǎng)站化運(yùn)作于一體,具備承接各種規(guī)模類型的網(wǎng)站建設(shè)項(xiàng)目的能力。
看郵箱能否設(shè)置默認(rèn)編碼為utf-8 如果不起作用,則是郵箱服務(wù)器的問(wèn)題
可以通過(guò)head標(biāo)簽中的meta標(biāo)簽進(jìn)行設(shè)置,比如設(shè)置頁(yè)面的字符集為utf-8,則對(duì)應(yīng)的meta標(biāo)簽為。
1
元素
在制作網(wǎng)頁(yè)過(guò)程中,你首先要定義網(wǎng)頁(yè)語(yǔ)言,以便訪問(wèn)者瀏覽器自動(dòng)設(shè)置語(yǔ)言,而我們用所見(jiàn)即所得的html工具時(shí),都沒(méi)有注意到這個(gè)問(wèn)題,因?yàn)樗悄J(rèn)設(shè)置。要設(shè)置的語(yǔ)言可以在html代碼狀態(tài)下找到: <meta http-equiv="content type" content="text/html; charset=gb2312"> ----把charset=gb2312改換成其它語(yǔ)言代碼即可,比如英文harset=en. 歡迎加入qq群514256948《網(wǎng)頁(yè)制作分類官方群》有什么問(wèn)題?更好的得到解答!網(wǎng)頁(yè)制作分類管理員擔(dān)保
打開(kāi)編輯菜單,選參數(shù),再選擇新建文檔,再設(shè)置編碼,這里設(shè)置的編碼是所有的新建文檔都是一個(gè)類型的編碼
gb2312編碼utf-8編碼
contentType="text/html; charset=gb2312" 可以設(shè)置編碼方式text/html 和設(shè)置字符集gb2312 pageEncoding="UTF-8" 只可以設(shè)置字符集
ContentType 屬性指定響應(yīng)的 HTTP 內(nèi)容類型。如果未指定 ContentType,默認(rèn)為 text/HTML。
語(yǔ)法
Response.ContentType [= ContentType ]
參數(shù)
ContentType
描述內(nèi)容類型的字符串。該字符串通常被格式化為類型/子類型,其中類型是常規(guī)內(nèi)容范疇而子類為特定內(nèi)容類型。有關(guān)支持內(nèi)容類型的完整列表,請(qǐng)參閱 Web 瀏覽器文檔或當(dāng)前的 HTTP 規(guī)格說(shuō)明
pageEncoding是jsp文件本身的編碼
contentType的charset是指服務(wù)器發(fā)送給客戶端時(shí)的內(nèi)容編碼
JSP要經(jīng)過(guò)兩次的“編碼”,第一階段會(huì)用pageEncoding,第二階段會(huì)用utf-8至utf-8,第三階段就是由Tomcat出來(lái)的網(wǎng)頁(yè), 用的是contentType。
第一階段是jsp編譯成.java,它會(huì)根據(jù)pageEncoding的設(shè)定讀取jsp,結(jié)果是由指定的編碼方案翻譯成統(tǒng)一的UTF-8 JAVA源碼(即.java),如果pageEncoding設(shè)定錯(cuò)了,或沒(méi)有設(shè)定,出來(lái)的就是中文亂碼。
第二階段是由JAVAC的JAVA源碼至java byteCode的編譯,不論JSP編寫(xiě)時(shí)候用的是什么編碼方案,經(jīng)過(guò)這個(gè)階段的結(jié)果全部是UTF-8的encoding的java源碼。
pageEncoding:設(shè)置JSP源文件和響應(yīng)正文中的字符集編碼。
contentType:設(shè)置JSP源文件和響應(yīng)正文的字符集編碼及MIME類型。
可見(jiàn),pageEncoding和contentType都可以設(shè)置JSP源文件和響應(yīng)正文中的字符集編碼。但也有區(qū)別:
設(shè)置JSP源文件字符集時(shí),優(yōu)先級(jí)為pageEncoding>contentType。如果都沒(méi)有設(shè)置,默認(rèn)ISO-8859-1。
設(shè)置響應(yīng)輸出的字符集時(shí),優(yōu)先級(jí)為contentType>pageEncoding。如果都沒(méi)有設(shè)置,默認(rèn)ISO-8859-1。
可以簡(jiǎn)單認(rèn)為是,pageEncoding是jsp文件本身的編碼;contentType的charset是指服務(wù)器發(fā)送給客戶端時(shí)的內(nèi)容編碼。例如:pageEncoding="GBK"。這句話的意思是,告訴JVM 這個(gè)jsp本身采用的"GBK"編碼,在JSP編譯成Servlet傳給JVM的時(shí)候,就用“GBK”的編碼方式將Jsp網(wǎng)頁(yè)源文件翻譯成統(tǒng)一的UTF-8形式的Java字節(jié)碼。如果不加設(shè)定,則JVM默認(rèn)的用ISO-8859-1這種編碼方式。contentType里的charset=gbk,指的是此網(wǎng)頁(yè)文件輸出到瀏覽器的輸出方式為gbk。在這個(gè)過(guò)程中,一個(gè)JSP的源文件需要經(jīng)過(guò)三個(gè)階段,兩次編碼,才能完成一次完整的輸出。
第一階段:將jsp編譯成Servlet(.java)文件。用到的指令是pageEncoding,根據(jù)pageEncoding=“XXX”的指示,找到編碼的規(guī)則為“XXX”,服務(wù)器在將JSP文件編譯成.java文件時(shí)會(huì)根據(jù)pageEncoding的設(shè)定讀取jsp,結(jié)果是由指定的編碼方案翻譯成統(tǒng)一的UTF-8編碼的JAVA源碼(即.java)。
第二階段:從Servlet文件(.java)到Java字節(jié)碼文件(.class),從UTF-8到UTF-8。在這一階段中,不論JSP編寫(xiě)時(shí)候用的是什么編碼方案,經(jīng)過(guò)這個(gè)階段的結(jié)果全部是UTF-8的encoding的java源碼。JAVAC用UTF-8的encoding讀取java源碼,編譯成UTF-8編碼的二進(jìn)制碼(即.class),這是JVM對(duì)常數(shù)字串在二進(jìn)制碼(java encoding)內(nèi)表達(dá)的規(guī)范。這一過(guò)程是由JVM的內(nèi)在規(guī)范決定的,不受外界控制。
第三階段:從服務(wù)器到瀏覽器,這在一過(guò)程中用到的指令是contentType。服務(wù)器載入和執(zhí)行由第二階段生成出來(lái)JAVA二進(jìn)制碼,輸出的結(jié)果,也就是在客戶端可見(jiàn)到的結(jié)果,在這次輸出過(guò)程中,由contentType屬性中的charset來(lái)指定,將UTF8形式的二進(jìn)制碼以charset的編碼形式來(lái)輸出。如果沒(méi)有人為設(shè)定,則默認(rèn)的是ISO-8859-1的形式。