第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

有效的XML文件是否需要XML聲明?

有效的XML文件是否需要XML聲明?

Qyouu 2019-09-02 20:07:57
我正在使用Xerces的Sax Parser解析XML文件。是否<?xml version="1.0" encoding="UTF-8"?>需要XML聲明?
查看完整描述

3 回答

?
汪汪一只貓

TA貢獻(xiàn)1898條經(jīng)驗(yàn) 獲得超8個(gè)贊

在XML 1.0中,XML聲明是可選的。請(qǐng)參閱XML 1.0建議書(shū)的第2.8節(jié),其中說(shuō)“應(yīng)該”使用它 - 這意味著它是推薦的,但不是強(qiáng)制性的。但是,在XML 1.1中,聲明是強(qiáng)制性的。請(qǐng)參閱XML 1.1建議書(shū)的第2.8節(jié),其中說(shuō)“必須”使用。它甚至繼續(xù)說(shuō)明如果聲明不存在,那自動(dòng)意味著文檔是XML 1.0文檔。


請(qǐng)注意,在XML聲明中,encoding和standalone都是可選的。只有version強(qiáng)制性。此外,這些不是屬性,所以如果它們存在,它們必須按順序:version,然后是any encoding,然后是any standalone。


<?xml version="1.0"?>

<?xml version="1.0" encoding="UTF-8"?>

<?xml version="1.0" standalone="yes"?>

<?xml version="1.0" encoding="UTF-16" standalone="yes"?>

如果不以這種方式指定編碼,XML解析器會(huì)嘗試猜測(cè)正在使用的編碼。XML 1.0 Recommendation描述了一種可以自動(dòng)檢測(cè)字符編碼的方法。實(shí)際上,如果輸入編碼為UTF-8,UTF-16或US-ASCII,這不是什么大問(wèn)題。當(dāng)遇到使用US-ASCII范圍之外的字符的8位編碼(例如ISO 8859-1)時(shí),自動(dòng)檢測(cè)不起作用 - 如果可以,請(qǐng)避免創(chuàng)建這些編碼。


的standalone指示是否將XML文檔可以在沒(méi)有DTD或無(wú)法正確處理。人們很少使用它。如今,如果沒(méi)有DTD,設(shè)計(jì)缺少信息的XML格式是不好的。


更新:


“prolog錯(cuò)誤/無(wú)效的utf-8編碼”錯(cuò)誤表示解析器在文件中找到的實(shí)際數(shù)據(jù)與XML聲明所說(shuō)的編碼不匹配?;蛘咴谀承┣闆r下,文件中的數(shù)據(jù)與自動(dòng)檢測(cè)的編碼不匹配。


由于您的文件包含字節(jié)順序標(biāo)記(BOM),因此它應(yīng)采用UTF-16編碼。我懷疑你的聲明說(shuō)明<?xml version="1.0" encoding="UTF-8"?>當(dāng)文件被NotePad改成UTF-16時(shí),這顯然是不正確的。簡(jiǎn)單的解決方案是刪除encoding并簡(jiǎn)單地說(shuō)<?xml version="1.0"?>。您也可以編輯它來(lái)說(shuō)encoding="UTF-16"但是原始文件(不是UTF-16)或者文件以某種方式變回UTF-8或其他編碼時(shí)會(huì)出錯(cuò)。


不要試圖刪除BOM - 這不是問(wèn)題的原因。使用NotePad或?qū)懽职寰庉媂ML是真正的問(wèn)題!


查看完整回答
反對(duì) 回復(fù) 2019-09-02
?
牧羊人nacy

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超7個(gè)贊

Xml聲明是可選的,因此你的xml沒(méi)有它就可以很好地形成。但建議使用它,以便解析器不會(huì)做出錯(cuò)誤的假設(shè),特別是關(guān)于所使用的編碼。


查看完整回答
反對(duì) 回復(fù) 2019-09-02
?
慕碼人2483693

TA貢獻(xiàn)1860條經(jīng)驗(yàn) 獲得超9個(gè)贊

如果你不使用默認(rèn)值時(shí)才需要versionencoding(你是在該示例)。


查看完整回答
反對(duì) 回復(fù) 2019-09-02
  • 3 回答
  • 0 關(guān)注
  • 985 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)