2011-07-28 15 views
1

僅在解析特定字符時出現expat錯誤。其他HTML代碼解析得很好。 我正在使用expat libexpatMT.lib的UTF-8庫,我正在使用包裝器中的char和std :: string。沒有廣泛的字符等使用。使用expat解析&符號失敗。令牌無效?

// The ampersand leads to: Expat error: *not well-formed (invalid token)* 
<a href="http://www.myurl.com?a=b&c=d">Link</a> 
<span>Tom & Jerry</span> 
<h1>K&auml;se</h1> 

我很困惑,爲什麼連字符都可以在這裏無效的原因,因爲它甚至使用HTML實體內像&amp;&amp;或自定義間隔更換與號也不管用。

有什麼建議嗎?和號是這裏的問題。

回答

3

在XML中,即使在實體中也可以使用&符號。所以有效值是<a href="http://www.myurl.com?a=b&amp;c=d">Link</a>
正確的網頁做到了。不過,瀏覽器對於你所犯的錯誤是相當寬容的。

+0

這不行。看起來我必須'雙重逃離'的價值,如:'& auml;'對於像'

Tom&Jerry
'''謝謝! – Smamatti

+0

這裏有問題,請檢查一下,如果代碼中沒有發生雙重轉換/未修復,或許。 – PhiLho