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

您的位置: 首頁 > 技術(shù)文檔 > 網(wǎng)絡(luò)編程 > 關(guān)于字符集和Unicode的相關(guān)知識
C# 3.5 WCF REST架構(gòu)簡單網(wǎng)站 回到列表 Visual Studio DSL 入門(一)
 關(guān)于字符集和Unicode的相關(guān)知識

作者:Joel Spolsky 時間: 2010-03-12 文檔類型:翻譯 來自:

第 1 頁 關(guān)于字符集和Unicode的相關(guān)知識 [1]
第 2 頁 關(guān)于字符集和Unicode的相關(guān)知識 [2]
第 3 頁 關(guān)于字符集和Unicode的相關(guān)知識 [3]
第 4 頁 關(guān)于字符集和Unicode的相關(guān)知識 [4]
第 5 頁 關(guān)于字符集和Unicode的相關(guān)知識 [5]

關(guān)于編碼的唯一事實(shí)

如果你完全忘掉了我剛剛解釋過的內(nèi)容,沒有關(guān)系,請記住一點(diǎn),如果你不知道一個字符串所使用的編碼,這個字符串在你手中也就毫無意義。你不能再把腦袋埋進(jìn)沙中以為"純文本"就是ASCII。事實(shí)上,

根本就不存在所謂的"純文本"。

那么我們?nèi)绾蔚弥粋字符串所使用的空間是何種編碼呢?對于這個問題已經(jīng)有了標(biāo)準(zhǔn)的作法。如果是一份電子郵件,你必須在格式的頭部有如下語句:

Content-Type: text/plain; charset="UTF-8"

對于一個網(wǎng)頁,傳統(tǒng)的想法是Web服務(wù)器會返回一個類似于Content-Type的http頭和Web網(wǎng)頁,注意,這里的字符編碼并不是在HTML中指出,而是在獨(dú)立的響應(yīng)headers中指出。

這帶來了一些問題。假設(shè)你擁有一個大的Web服務(wù)器,擁有非常多的站點(diǎn),每個站點(diǎn)都包括數(shù)以百計的Web頁面,而寫這些頁面的人可能使用不同的語言,他們在他們自己計算機(jī)上的FrontPage等工具中看到頁面正常顯示就提交了上來,顯然,服務(wù)器是沒有辦法知道這些文件究竟使用的是何種編碼,當(dāng)然 Content-Type頭也沒有辦法發(fā)送了。

如果可以把Content-Type夾在HTML文件中,那不是會變得非常方便?這個想法會讓純粹論者發(fā)瘋,你如何在不知道它的編碼的情況下讀一個HTML文件呢?答案很簡單,因?yàn)閹缀跛械木幋a在32-127的碼字都做相同的事情,所以不需要使用特殊字符,你可以從HTML文件中獲得你想要的Content-Type。

<html>
<head>
<meta http-equiv="Conent-Type" content="text/html" charset="utf-8">

注意,這里的meta標(biāo)簽必須在head部分第一個出現(xiàn),一旦瀏覽器看到這個標(biāo)簽就會馬上停止解析頁面,然后使用這個標(biāo)簽中給出的編碼從頭開始重新解析整個頁面。

如果瀏覽器在http頭或者meta標(biāo)簽中都找不到相關(guān)的Content-Type信息,那應(yīng)該怎么辦?Internet Explorer做了一些事情:它試圖猜測出正確的編碼,基于不同語言編碼中典型文本中出現(xiàn)的那些字節(jié)的頗率。因?yàn)楣爬系?比特的碼頁(code pages)傾向于把它們的國家編碼放置在128-255碼字的范圍內(nèi),而不同的人類語言字母系統(tǒng)中的字母使用頗率對應(yīng)的直方圖會有不同,所以這個方法可以奏效。雖然很怪異,但對于那些老忘記寫Content-Type的幼稚網(wǎng)頁編寫者而言,這個方法大多數(shù)情況下可以讓他們的頁面顯然OK。直到有一天,他們寫的頁面不再滿足"letter-frequency-distribution",Internet Explore覺得這應(yīng)該是朝鮮語,于是就當(dāng)朝鮮語來顯示了,結(jié)果顯然糟透了。這個頁面的讀者們立刻就遭殃了,一個保加利亞語寫的頁面卻用朝鮮語來顯示,效果會怎樣?于是讀者使用 查看-->編碼 菜單來不停地試啊試,直到他終于試出了正確的編碼,但前提是他知道可以這樣做,事實(shí)上大多數(shù)人根本不會這樣做。

在我的公司開發(fā)的一款Web頁面管理軟件CityDesk的最新版本中,我們決定像Visual Basic、COM和Windows NT/2000/XP所做的那樣,整個過程中使用UCS-2(兩個字節(jié))Unicode。在我們寫的C++代碼中,我們把所有的char類型換成了wchar_t,所有使用str函數(shù)的地方,換成了相應(yīng)的wcs函數(shù)(如使用wcscatwcslen來替代strcatstrlen)。如果想在C中創(chuàng)建一個UCS-2的字符串,只需在字符串前面加L即可:L"Hello"。

當(dāng)CityDesk發(fā)布頁面的時候,它把所有的頁面都轉(zhuǎn)換成了UTF-8編碼,而差不多所有的瀏覽器都對UTF-8有不錯的支持。這就是"Joel On Software"(就是作者的首頁)編碼的方式,所以即使它擁有29個語言版本,至今也未聽到有一個人抱怨頁面無法瀏覽。

這篇文章已經(jīng)有點(diǎn)長了,而且我也沒有辦法告訴你關(guān)于字符編碼和Unicode的所有應(yīng)該了解的知識,但讀到現(xiàn)在我想你已經(jīng)掌握到基本的概念,回去編程時可以使用抗生素而不是螞蝗和咒語了,這就看做是留給你的作業(yè)吧。

本文鏈接:http://m.95time.cn/tech/program/2010/7432.asp 

出處:
責(zé)任編輯:bluehearts

上一頁 關(guān)于字符集和Unicode的相關(guān)知識 [4] 下一頁

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

相關(guān)文章
任意字符集下正常顯示網(wǎng)頁
Flash與后臺編碼問題解決新方案
關(guān)鍵字搜索 常規(guī)搜索 推薦文檔
熱門搜索:CSS Fireworks 設(shè)計比賽 網(wǎng)頁制作 web標(biāo)準(zhǔn) 用戶體驗(yàn) UE photoshop Dreamweaver Studio8 Flash 手繪 CG
站點(diǎn)最新 站點(diǎn)最新列表
周大!熬•自然”設(shè)計大賽開啟
國際體驗(yàn)設(shè)計大會7月將在京舉行
中國國防科技信息中心標(biāo)志征集
云計算如何讓安全問題可控
云計算是多數(shù)企業(yè)唯一擁抱互聯(lián)網(wǎng)的機(jī)會
阿里行云
云手機(jī)年終巨獻(xiàn),送禮標(biāo)配299起
阿里巴巴CTO王堅的"云和互聯(lián)網(wǎng)觀"
1499元買真八核 云OS雙蛋大促
首屆COCO桌面手機(jī)主題設(shè)計大賽
欄目最新 欄目最新列表
淺談JavaScript編程語言的編碼規(guī)范
如何在illustrator中繪制臺歷
Ps簡單繪制一個可愛的鉛筆圖標(biāo)
數(shù)據(jù)同步算法研究
用ps作簡單的作品展示頁面
CSS定位機(jī)制之一:普通流
25個最佳最閃亮的Eclipse開發(fā)項(xiàng)目
Illustrator中制作針線縫制文字效果
Photoshop制作印刷凹凸字體
VS2010中創(chuàng)建自定義SQL Rule
>> 分頁 首頁 前頁 后頁 尾頁 頁次:5/51個記錄/頁 轉(zhuǎn)到 頁 共5個記錄

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

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

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

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

雜⑦雜⑧ Gold NORMANA V2