中文字幕二区_国产精品免费在线观看_黄色网站观看_人人草人人澡_日本真实娇小xxxx

您的位置: 首頁(yè) > 技術(shù)文檔 > 網(wǎng)絡(luò)編程 > [asp]讓你知道codepage的重要
ColdFusionMX技術(shù)課程第一期 回到列表 javascript 的幾種排序方法
 [asp]讓你知道codepage的重要

作者:蕭蕭小雨 時(shí)間: 2004-11-22 文檔類(lèi)型:原創(chuàng) 來(lái)自:藍(lán)色理想

這幾天研究UTF-8編碼,太暈了,把我的看法和各位討論討論。
歡迎來(lái)批啊。以下都是我的想法,哪里有不對(duì)的請(qǐng)不吝賜教,幫忙指出來(lái)。

相關(guān)的題外話:

一、操作系統(tǒng)
window系統(tǒng)內(nèi)部都是unicode的。文件夾名,文件名等都是unicode的,任何語(yǔ)言系統(tǒng)下都能正常顯示。

二、輸入法:
微軟拼音輸出的是Unicode的,智能ABC輸出是簡(jiǎn)體中文的(所以智能ABC在非簡(jiǎn)體中文系統(tǒng)根本不能用,只能打英文)。

三、網(wǎng)頁(yè)的textarea
網(wǎng)頁(yè)的textarea是用unicode顯示的。所以往里打什么字都能顯示。而一些flash做的輸入框就不行了。

四、Access2000
access里面保存的數(shù)據(jù)是unicode的,在任何語(yǔ)言系統(tǒng)下都能顯示。
如果數(shù)據(jù)視圖查看有些字符不正常,那是因?yàn)轱@示所用的字體不是Unicode字體,
換用Arial Unicode MS 字體就能全部顯示了。(access幫助,搜索,輸入unicode,有說(shuō)明)

五、Word
word里的繁簡(jiǎn)轉(zhuǎn)換,簡(jiǎn)體轉(zhuǎn)換到繁體后,內(nèi)碼仍是簡(jiǎn)體中文的,其實(shí)只是簡(jiǎn)體中的繁體字。

六、ASP內(nèi)部是Unicode的,所有文本都是Unicode存儲(chǔ)的。需要時(shí)轉(zhuǎn)換到指定字符集。

首先說(shuō)下結(jié)論:
<%@ codepage=936%>簡(jiǎn)體中文
<%@ codepage=950%>繁體中文
<%@ codepage=65001%>UTF-8

codepage指定了IIS按什么編碼讀取傳遞過(guò)來(lái)的串串(表單提交,地址欄傳遞等)。

也指定了所有文本變量從Unicode轉(zhuǎn)換到的編碼,
也就指定了從數(shù)據(jù)庫(kù)取出的數(shù)據(jù)從Unicode轉(zhuǎn)換到的編碼。(注意這個(gè),很重要。)

關(guān)鍵字:
讀。阂粋(gè)串串,按簡(jiǎn)體讀取是一些字,按繁體讀取是一些字,串串本身編碼沒(méi)有變。

轉(zhuǎn)換:系統(tǒng)主動(dòng)的轉(zhuǎn)換,比如從Unicode的“化”字到Big5的“化”字,內(nèi)碼變成Big5的。如果Big5沒(méi)有對(duì)應(yīng)的字,保留Unicode形式(&#xxxx;)

簡(jiǎn)體中文:化六個(gè)結(jié)論
Unicode16進(jìn)制形式:&#x5316;&#x516d;&#x4e2a;&#x7ED3;&#x8bba;
Unicode10進(jìn)制形式:&#21270;&#20845;&#20010;&#32467;&#35770;

下面是我推測(cè)出來(lái)的編碼轉(zhuǎn)換的過(guò)程:
客戶端:輸入法Unicode--輸入框unicode--從Unicode按charset轉(zhuǎn)換到對(duì)應(yīng)編碼()--表單發(fā)送編碼

服務(wù)器端:IIS解開(kāi)表單編碼--按codepage指定編碼讀取--轉(zhuǎn)換到對(duì)應(yīng)的Unicode--可以用request("")讀取了--進(jìn)行一些處理--以Unicode編碼保存到數(shù)據(jù)庫(kù)

服務(wù)器端:讀取數(shù)據(jù)庫(kù)的Unicode數(shù)據(jù),轉(zhuǎn)換到codepage指定編碼---生成源代碼--IE按charset讀取顯示。

下面舉例說(shuō)明:
例一:
假設(shè)有三個(gè)asp頁(yè)面,典型的留言頁(yè)面:
1.write.asp 簡(jiǎn)單的輸入表單,提交到add.asp。
<META http-equiv="Content-Type" content="text/html; charset=big5">
2.add.asp 接收留言,保存到數(shù)據(jù)庫(kù)
<%@ codepage=936%>
3.read.asp 從數(shù)據(jù)庫(kù)取得留言,顯示。
<%@ codepage=936%> charset=GB2312 或
<%@ codepage=950%> charset=big5

大家可以猜一猜,我在write.asp里用微軟拼音輸入法輸入“化六個(gè)討論”。最后在read.asp里會(huì)顯示什么樣?
是不是暈了。讓我們從頭分析。

例二:
把例一的add.asp的<%@ codepage=936%>改為<%@ codepage=950%>,又會(huì)怎么樣呢?

到這里發(fā)現(xiàn)了什么?
1.如果輸入的文字和Charset對(duì)應(yīng)的不同,一轉(zhuǎn)換,就可能出現(xiàn)Unicode形式的字了。這里就是原因所在。以后整個(gè)過(guò)程都保留著。
2.Add.asp里codepage決定了保存到數(shù)據(jù)庫(kù)的文字,用的是哪個(gè)語(yǔ)言對(duì)應(yīng)的Unicode.如codepage=936,
那么數(shù)據(jù)庫(kù)保存的就是簡(jiǎn)體中文的Unicode(數(shù)據(jù)庫(kù)拿回簡(jiǎn)體中文系統(tǒng),一切正常的),
codepage=950保存的就是繁體中文的Unicode.(拿回簡(jiǎn)體中文系統(tǒng),就不對(duì)了)。

3.注意一下串串的變化過(guò)程:

1)輸入法---CharsetUnicode----指定字符集的映射
2)Charset----表單編碼串串簡(jiǎn)單編碼
3)表單解碼上步的逆過(guò)程,兩步抵消了。
4)串串à按codepage讀取串串沒(méi)變,這步有可能“誤會(huì)讀取”
5)轉(zhuǎn)為對(duì)應(yīng)的Unicode Codepage指定字符集----Unicode映射
6)中間處理,進(jìn)數(shù)據(jù)庫(kù)無(wú)變化,直接以Unicode形式進(jìn)入
7)按codepage讀取數(shù)據(jù)庫(kù) Unicode----codepage指定字符集的映射
8)顯示,按Charset指定字符集讀取串串沒(méi)變。

以例一說(shuō)明:

例二:

暈了,F(xiàn)在來(lái)用用知識(shí)。

案例1。
簡(jiǎn)體中文系統(tǒng)下跑的好好的代碼,放到國(guó)外空間上,數(shù)據(jù)庫(kù)里亂碼,原有的數(shù)據(jù)也亂碼。
分析:因?yàn)榇蠖鄶?shù)人平時(shí)用的都是簡(jiǎn)體中文系統(tǒng),默認(rèn)的codepage=936,所以平時(shí)大家不寫(xiě)也沒(méi)有關(guān)系。
但到了國(guó)外空間問(wèn)題就出來(lái)了。從數(shù)據(jù)庫(kù)里的Unicode轉(zhuǎn)換到英文編碼去了,所以數(shù)據(jù)庫(kù)原有的簡(jiǎn)體中文轉(zhuǎn)換到英文后,按GB顯示自然亂碼。
如圖,新輸入的文字顯示正常,但數(shù)據(jù)庫(kù)里保存的是英文的Unicode的。
解決方法:全部加上<%@codepage=936即可%>。
全程只有簡(jiǎn)體中文與對(duì)應(yīng)Unicode間的轉(zhuǎn)換。

案例二:
簡(jiǎn)體中文的代碼和數(shù)據(jù),想轉(zhuǎn)為完全的繁體版,該怎么辦?
分析:1。代碼文件編碼全部改為Big5的,文件本身保存編碼選繁體。
2.<%@ codepage=936 %>
3.Charset=big5
4.access版本無(wú)所謂,因?yàn)閍ccess里的數(shù)據(jù)是Unicode的。
5.好了,代碼可以在純繁體系統(tǒng)下跑了。
6.遺留問(wèn)題:原有的簡(jiǎn)體中文數(shù)據(jù)讀出會(huì)有一些問(wèn)號(hào)。效果同例一的950讀取,big5顯示。因?yàn)閺暮?jiǎn)體中文的Unicode轉(zhuǎn)換到繁體中文了,有些字繁體中沒(méi)有,就會(huì)出問(wèn)號(hào)。
7.解決:用一個(gè)臨時(shí)asp頁(yè),codepage=65001,讀出為簡(jiǎn)體中文的Unicode,用一個(gè)Unicode->Big5的函數(shù),轉(zhuǎn)為繁體中文,然后寫(xiě)回?cái)?shù)據(jù)庫(kù),應(yīng)該行了吧?

兩個(gè)案例完全是我按照理論推導(dǎo)出來(lái)了,未經(jīng)證實(shí)。
有類(lèi)似經(jīng)歷的歡迎批評(píng)指正。

論壇的相關(guān)討論:http://m.95time.cn/bbs/NewsDetail.asp?id=1831362

出處:藍(lán)色理想
責(zé)任編輯:藍(lán)色

◎進(jìn)入論壇網(wǎng)絡(luò)編程版塊參加討論

作者文章
[asp]讓你知道codepage的重要
用 SA FileUp 上傳多文件
將數(shù)據(jù)庫(kù)的內(nèi)容生成WORD文檔
關(guān)鍵字搜索 常規(guī)搜索 推薦文檔
熱門(mén)搜索:CSS Fireworks 設(shè)計(jì)比賽 網(wǎng)頁(yè)制作 web標(biāo)準(zhǔn) 用戶體驗(yàn) UE photoshop Dreamweaver Studio8 Flash 手繪 CG
站點(diǎn)最新 站點(diǎn)最新列表
周大!熬•自然”設(shè)計(jì)大賽開(kāi)啟
國(guó)際體驗(yàn)設(shè)計(jì)大會(huì)7月將在京舉行
中國(guó)國(guó)防科技信息中心標(biāo)志征集
云計(jì)算如何讓安全問(wèn)題可控
云計(jì)算是多數(shù)企業(yè)唯一擁抱互聯(lián)網(wǎng)的機(jī)會(huì)
阿里行云
云手機(jī)年終巨獻(xiàn),送禮標(biāo)配299起
阿里巴巴CTO王堅(jiān)的"云和互聯(lián)網(wǎng)觀"
1499元買(mǎi)真八核 云OS雙蛋大促
首屆COCO桌面手機(jī)主題設(shè)計(jì)大賽
欄目最新 欄目最新列表
淺談JavaScript編程語(yǔ)言的編碼規(guī)范
如何在illustrator中繪制臺(tái)歷
Ps簡(jiǎn)單繪制一個(gè)可愛(ài)的鉛筆圖標(biāo)
數(shù)據(jù)同步算法研究
用ps作簡(jiǎn)單的作品展示頁(yè)面
CSS定位機(jī)制之一:普通流
25個(gè)最佳最閃亮的Eclipse開(kāi)發(fā)項(xiàng)目
Illustrator中制作針線縫制文字效果
Photoshop制作印刷凹凸字體
VS2010中創(chuàng)建自定義SQL Rule

藍(lán)色理想版權(quán)申明:除部分特別聲明不要轉(zhuǎn)載,或者授權(quán)我站獨(dú)家播發(fā)的文章外,大家可以自由轉(zhuǎn)載我站點(diǎn)的原創(chuàng)文章,但原作者和來(lái)自我站的鏈接必須保留(非我站原創(chuàng)的,按照原來(lái)自一節(jié),自行鏈接)。文章版權(quán)歸我站和作者共有。

轉(zhuǎn)載要求:轉(zhuǎn)載之圖片、文件,鏈接請(qǐng)不要盜鏈到本站,且不準(zhǔn)打上各自站點(diǎn)的水印,亦不能抹去我站點(diǎn)水印。

特別注意:本站所提供的攝影照片,插畫(huà),設(shè)計(jì)作品,如需使用,請(qǐng)與原作者聯(lián)系,版權(quán)歸原作者所有,文章若有侵犯作者版權(quán),請(qǐng)與我們聯(lián)系,我們將立即刪除修改。

您的評(píng)論
用戶名:  口令:
說(shuō)明:輸入正確的用戶名和密碼才能參與評(píng)論。如果您不是本站會(huì)員,你可以注冊(cè) 為本站會(huì)員。
注意:文章中的鏈接、內(nèi)容等需要修改的錯(cuò)誤,請(qǐng)用報(bào)告錯(cuò)誤,以利文檔及時(shí)修改。
不評(píng)分 1 2 3 4 5
注意:請(qǐng)不要在評(píng)論中含與內(nèi)容無(wú)關(guān)的廣告鏈接,違者封ID
請(qǐng)您注意:
·不良評(píng)論請(qǐng)用報(bào)告管理員,以利管理員及時(shí)刪除。
·尊重網(wǎng)上道德,遵守中華人民共和國(guó)的各項(xiàng)有關(guān)法律法規(guī)
·承擔(dān)一切因您的行為而直接或間接導(dǎo)致的民事或刑事法律責(zé)任
·本站評(píng)論管理人員有權(quán)保留或刪除其管轄評(píng)論中的任意內(nèi)容
·您在本站發(fā)表的作品,本站有權(quán)在網(wǎng)站內(nèi)轉(zhuǎn)載或引用
·參與本評(píng)論即表明您已經(jīng)閱讀并接受上述條款
推薦文檔 | 打印文檔 | 評(píng)論文檔 | 報(bào)告錯(cuò)誤  
專(zhuān)業(yè)書(shū)推薦 更多內(nèi)容
網(wǎng)站可用性測(cè)試及優(yōu)化指南
《寫(xiě)給大家看的色彩書(shū)1》
《跟我去香港》
眾妙之門(mén)—網(wǎng)站UI 設(shè)計(jì)之道
《Flex 4.0 RIA開(kāi)發(fā)寶典》
《贏在設(shè)計(jì)》
犀利開(kāi)發(fā)—jQuery內(nèi)核詳解與實(shí)踐
作品集 更多內(nèi)容

雜⑦雜⑧ Gold NORMANA V2