我的所有網(wǎng)頁編碼是utf-8,當打開瀏覽器不對數(shù)據(jù)庫插入數(shù)據(jù)時(main.asp),直接讀取數(shù)據(jù)進行瀏覽(showAll.asp),一切正常;但是當在main.asp通過ajax把數(shù)據(jù)插入到access表時,再去瀏覽showAll.asp頁面時,凡是Response.Write('中文')語句中的內(nèi)容都是亂碼,即使showAll.asp頁面不包含從數(shù)據(jù)庫來的數(shù)據(jù),也是一樣全部是亂碼。當把瀏覽后的網(wǎng)頁源碼用筆記本編輯時,發(fā)現(xiàn)他的編碼變成了ANSI。
所以只需要在showAll.asp頁面的前面加上
%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
%Session.CodePage=65001%>
%Session.CodePage=65001%>即可解決問題。
如果您的網(wǎng)頁是基于UTF-8編碼的,請在代碼第一行加入:
%@LANGUAGE="VBSCRIPT"CODEPAGE="65001"%>
如果您的網(wǎng)頁是基于GB2312編碼的,請在代碼第一行加入:
%@LANGUAGE="VBSCRIPT"CODEPAGE="936"%>
注:我就是通過此方法解決了ASP亂碼的.這里大家要注意點2點
1.%@LANGUAGE="VBSCRIPT"CODEPAGE="65001"%> 這行代碼一定要放到頁面的第一行
這是重點:
2.%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>和meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>和meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
response.write 輸出 utf-8的方法
為了適應xmlhttp控件的需要,這個控件只有在獲得utf-8編碼的網(wǎng)頁內(nèi)容的時候,responseText才能得到正確輸出,試了各種方法,甚至在asp服務器上用adodb.steam來轉(zhuǎn)碼,后來看到一篇文章,只要在asp中加入以下代碼即可,一試,果然成功!只是不清楚為什么。
Response.ContentType="text/html"
Response.AddHeader"Content-Type","text/html;charset=UTF-8"
Response.CodePage=65001
Response.CharSet="UTF-8"
Response.BinaryWrite(chrb(239))
Response.BinaryWrite(chrb(187))
Response.BinaryWrite(chrb(191))
接下來用 response.write 直接輸出內(nèi)容即可,客戶端將得到以utf-8編碼的內(nèi)容
response.write 輸出亂碼的解決方法
在很多時候,我們都會不太注意一些細節(jié)的問題,
例如在asp的開發(fā)過程中,最讓人頭痛的就是網(wǎng)頁的解碼問題
我現(xiàn)在開發(fā)的都是一些繁體中文的網(wǎng)站,而且公司規(guī)定要用utf-8這個國際解碼,
于是解碼問題就會整體纏著你不放了··
我們不要看小%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
這句代碼,因為這句代碼是很有用的,特別是在解碼方面,比如很多人在使用response.write這個方法輸出中文字符串的時候會出現(xiàn)亂碼,并且不管你怎樣添加response.charset="utf-8" 、session.codepage=65001都無補于事,于是我們就需要%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
當然response.charset="utf-8" 、session.codepage=65001這兩句也不能少;
但是雖然asp代碼所需要的條件都齊全了,但是我們不要忘了網(wǎng)頁本身需要的條件;
meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
這個HTML網(wǎng)頁所需要的解碼設定的條件;當然,這是asp代碼和html代碼混合的文件所需要的;
如果是純asp代碼的asp文件可以不要;
再一個就是文件本身還得必須是utf-8的解碼;
如果這個大家不知道在哪里看的話;大家可以用記事本打開的asp文件;另存為,如果編碼是ANSI的話,將其改為utf-8即可,
這些條件都滿足了之后,我想就應該不會出現(xiàn)亂碼了;