簡體   English   中英

名稱不能以''字符開頭,十六進制值0x20

[英]Name cannot begin with the ' ' character, hexadecimal value 0x20

為此,我經歷了很多回答,但無法解決問題,因此提出了要求。

我在字符串中獲取我的xml。 它由“ <6”作為某些節點值中的內容。

結果我得到一個例外

名稱不能以''字符(十六進制值0x20)開頭。 3270行,位置54。

這是代碼:

string patternToReplaceAnd = "&(?![a-z#]+;)";
Regex reg = new Regex(patternToReplaceAnd);
xml = reg.Replace(xml, "&amp;");
XDocument xDoc = XDocument.Parse(xml);

誰能幫我嗎?

您說要以字符串形式獲取XML。 你不是。 您正在字符串中獲取垃圾。

如果垃圾對您確實很重要,則可以嘗試將其轉換為XML。 您如何做取決於它的嚴重程度,我們無法真正判斷。

更好的是:拒絕接受偽劣商品。 回到供應商,並告訴他們生成真實的XML。

我確實意識到這個問題很舊,但是今天我遇到了同樣的問題,希望我的回答對將來可能會遇到此問題的人有所幫助。

問題是包含<后跟space 您將不得不用&lt;替換該內容&lt; 因此它不會被識別為格式錯誤的xml start tag

xml = xml.Replace('< ',"&lt; "); //make sure you include the space after < to avoid replacing actual tags.
XDocument xDoc = XDocument.Parse(xml);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM