主頁 > 知識(shí)庫 > XML指南——XML編碼

XML指南——XML編碼

熱門標(biāo)簽:本地電話機(jī)器人 高德地圖地圖標(biāo)注服務(wù)中心 400電話辦理包年 r語言數(shù)據(jù)可視化地圖標(biāo)注 微信地圖標(biāo)注合并了 南寧網(wǎng)絡(luò)外呼系統(tǒng)運(yùn)營(yíng)商 隨州外呼調(diào)研系統(tǒng) 東營(yíng)電銷 如何修改多個(gè)百度地圖標(biāo)注
  
XML文檔可以包含外文字符比如挪威語或者法語(中文當(dāng)然也可以!這一部分還是不能照原文翻譯,下面有些內(nèi)容是我自己寫的)
為了讓你的解析器能夠明白這些字符,你必須在XML文檔中統(tǒng)一的字符編碼標(biāo)準(zhǔn)。



Windows 95/98 記事本
Windows 95/98 記事本不能以Unicode的編碼格式保存文件。
可以使用記事本來編輯和保存包含了外文字符的XML文檔 (比如:挪威語或者法語或者中文)
?xml version="1.0"?>
note>
from>小奀/from>
to>小林/to>
message>晚上一起去火鍋呀/message>
/note>


但是如果你用瀏覽器打開這個(gè)用記事本編輯過的XML文檔,將會(huì)出現(xiàn)一個(gè)錯(cuò)誤open it with IE 5.0。



在Windows 95/98 記事本中使用編碼
Windows 95/98 記事本編輯XML文件必須進(jìn)行編碼屬性設(shè)置。 
為了避免發(fā)生錯(cuò)誤,可以在XML文檔聲明中加上一個(gè)encoding屬性,指明此XML文檔的編碼類型,但是不要使用Unicode編碼。 
下面的編碼類型不會(huì)導(dǎo)致錯(cuò)誤, 并且漢字顯示正常:
?xml version="1.0" encoding="gb2312"?>


下面的編碼類型不會(huì)導(dǎo)致錯(cuò)誤, 并且漢字顯示正常:
?xml version="1.0" encoding="gbk"?>


下面的編碼類型不會(huì)導(dǎo)致錯(cuò)誤, 并且漢字顯示不正常(亂碼):
?xml version="1.0" encoding="windows-1252"?>


下面的編碼類型不會(huì)導(dǎo)致錯(cuò)誤, 并且漢字顯示不正常(亂碼):
?xml version="1.0" encoding="ISO-8859-1"?>


下面的編碼類型不會(huì)導(dǎo)致錯(cuò)誤,并且漢字顯示正常:
?xml version="1.0" encoding="UTF-8"?>


下面的編碼類型會(huì)導(dǎo)致錯(cuò)誤:
?xml version="1.0" encoding="UTF-16"?>





使用Windows 2000 記事本
Windows 2000 記事本可以以Unicode編碼格式保存文件。
Windows 2000 的記事本支持Unicode字符集。如果使用Win2000的記事本以Unicode的編碼格式保存XML文檔(請(qǐng)注意這里在XML聲明中沒有編碼信息):
?xml version="1.0"?>
note>from>小奀/from>to>小林/to>message>晚上一起去火鍋呀/message>/note>


下面這個(gè)文件; note_encode_none_u.xml, 在IE5.0+中將不會(huì)出現(xiàn)錯(cuò)誤,但如果你使用網(wǎng)景Netscape 6.2,就可能出錯(cuò)。讀者比較 note_encode_none.xml 和 note_encode_none_u.xml這兩個(gè)文件,如果單獨(dú)看他們各自的源文件,是沒有區(qū)別的,但為什么一個(gè)能顯示,一個(gè)不能顯示呢?答案就是Unicode字符集。



Windows 2000 記事本編碼
Windows 2000記事本還可以以"UTF-16"編碼格式保存文件。
如果你在XML文檔中聲明了編碼屬性而又以Unicode編碼格式保存文件,將可能發(fā)生錯(cuò)誤。
下面的代碼將會(huì)導(dǎo)致錯(cuò)誤:
?xml version="1.0" encoding="windows-1252"?>


下面的代碼將會(huì)導(dǎo)致錯(cuò)誤:
?xml version="1.0" encoding="ISO-8859-1"?>


下面的代碼將會(huì)導(dǎo)致錯(cuò)誤:
?xml version="1.0" encoding="UTF-8"?>


下面這個(gè)文件; note_encode_utf16_u.xml, 將會(huì)在IE5.0+中顯示正常,在網(wǎng)景Netscape 6.2瀏覽器中將會(huì)出現(xiàn)錯(cuò)誤。
?xml version="1.0" encoding="UTF-16"?>





錯(cuò)誤信息
當(dāng)時(shí)用IE5.0或者更高版本瀏覽XML文檔時(shí),可能會(huì)遇到兩中不同的編碼錯(cuò)誤:
在文本內(nèi)容中發(fā)現(xiàn)一個(gè)非法字符(An invalid character was found in text content)。
如果你的XML文檔和你的XML文檔的編碼格式不匹配就可能導(dǎo)致錯(cuò)誤發(fā)生。通常情況是,XML文檔包含一些“非英文”字符,并且使用了單字節(jié)編碼的編輯器,而且沒有在XML文檔的聲明中設(shè)置XML文檔的編碼格式。 

不支持從當(dāng)前的編碼格式轉(zhuǎn)換成另一種編碼格式(Switch from current encoding to specified encoding not supported)。
如果XML文檔以Unicode/UTF-16編碼格式保存,但是XML文檔的聲明中卻設(shè)置了編碼格式是一些單字節(jié)的編碼(比如 Windows-1252, ISO-8859-1 或者  UTF-8);或者XML文檔以單字節(jié)編碼格式保存,但是XML文檔的聲明中卻設(shè)置了編碼格式是一些Unicode/UTF-16的編碼形式,這樣兩種情況都會(huì)導(dǎo)致錯(cuò)誤發(fā)生。



結(jié)論
結(jié)論:在保存XML文檔之前在XML文檔的聲明中設(shè)置文檔的編碼格式,我的一些關(guān)于避免錯(cuò)誤發(fā)生的建議:
使用一種支持Unicode編碼格式的編輯器。 
確信你知道自己正在使用那種編碼格式。 
在XML文檔中使用屬性聲明設(shè)置編碼格式。

標(biāo)簽:宿遷 黃石 拉薩 果洛 寧夏 西雙版納 益陽 德州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《XML指南——XML編碼》,本文關(guān)鍵詞  XML,指南,編碼,XML,指南,編碼,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《XML指南——XML編碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于XML指南——XML編碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章