[英]XML Parsing Error: not well-formed error
我正在嘗試將我的數據庫提要數據解析為XML,但是在客戶端,我一直收到此錯誤:
XML Parsing Error: not well-formed
Location: http://localhost:12736/Test.aspx
Line Number 7, Column 26:
<Publication Date>29/04/2015 09:40:53</Publication Date>
------------------^
我嘗試將datetime參數'ActivateDate'轉換為字符串,但是在'publication date'節點上仍然遇到相同的錯誤。 我也嘗試過在線尋找解決方案,但仍然無法解決。
這是我的服務器代碼,以供進一步參考:
Response.Clear();
Response.ContentType = "text/xml";
using (XmlTextWriter xml = new XmlTextWriter(Response.OutputStream, Encoding.UTF8))
{
xml.Formatting = Formatting.Indented;
xml.Indentation = 4;
xml.WriteStartDocument();
xml.WriteStartElement("items");
foreach (DataRow oFeedItem in dt.Rows)
{
// DateTime dtt = DateTime.Parse(oFeedItem["ACTIVEDATE"].ToString());
string dat = Convert.ToString(oFeedItem["ACTIVEDATE"].ToString());
// dat.ToString("dd MMMM yyyy");
xml.WriteStartElement("Article");
xml.WriteElementString("title", oFeedItem["title"].ToString());
xml.WriteStartElement("description");
xml.WriteCData(oFeedItem["Body"].ToString());
xml.WriteEndElement();
xml.WriteElementString("categories", oFeedItem["categories"].ToString());
xml.WriteElementString("Publication Date", dat);
xml.WriteEndElement();
}
xml.WriteEndElement();
xml.WriteEndDocument();
xml.Flush();
xml.Close();
Response.End();
}
感謝您的建議和反饋。
XML元素名稱不能包含空格。
W3C規范將 xml標記聲明為:
'<' Name (S Attribute)* S? '>'
其中S
是一個或多個空格字符(#x20 |#x9 | #xD | #xA)。
因此,從該規范中可以清楚地看到,空格(#x20)被視為元素名稱和屬性列表之間的分隔符-因此名稱本身不能包含空格。
將元素的Publication Date
名稱更改為Publication_Date
將有助於使xml格式正確。
xml.WriteElementString("Publication_Date", dat);
元素名稱不能包含空格,因此請更改Publication Date
以刪除該空格(例如PublicationDate
)。
在w3schools中 ,元素的命名規則:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.