的這一部分,我很新的XML和有關於這種類型的文件的解析問題:如何解析XML
XML文檔:
<?xml version="1.0" encoding="UTF-8"?>
<ISBNdb server_time="2005-07-29T02:41:22">
<BookList total_results="1" page_size="10" page_number="1" shown_results="1">
<BookData book_id="law_and_disorder" isbn="0210406240">
<Title>Law and disorder</Title>
<TitleLong>Law and disorder: law enforcement in television network news</TitleLong>
<AuthorsText>V. M. Mishra</AuthorsText>
<PublisherText publisher_id="asia_pub_house">New York: Asia Pub. House, c1979.</PublisherText>
<Details dewey_decimal="302.2/3"
dewey_decimal_normalized="302.23"
lcc_number="PN4888"
language="eng"
physical_description_text="x, 127 p. ; 22 cm."
edition_info=""
change_time="2004-10-19T23:52:56"
price_time="2005-07-29T02:06:41" />
</BookData>
</BookList>
</ISBNdb>
我將如何去獲得該部分文件的ISBN編號<BookData book_id="law_and_disorder" isbn="0210406240">
?下面是我使用的解析C#:
C#解析代碼
XmlNodeList nodes = doc.DocumentElement.SelectNodes("/ISBNdb/BookList");
List<Book> books = new List<Book>();
foreach (XmlNode node in nodes)
{
Book book = new Book();
book.author = node.SelectSingleNode("BookData/AuthorsText").InnerText;
book.title = node.SelectSingleNode("BookData/Title").InnerText;
book.ISBN = node.SelectSingleNode("BookData").LastChild.ToString();
books.Add(book);
addInfo(book.author, book.title, book.ISBN);
}
據我所知,有不同的「節點」,如「標題」和「詳細資料」。但是,我不明白如何從節點「標籤」本身獲取信息。任何澄清是非常讚賞,並隨時糾正我對我的不正確的'定義'
謝謝!
'我是很新的XML'最好開始學習Linq2Xml,漂亮的API,使用更方便。 – Eser
如果我要使用這個Linq2XML,我能否輕鬆修改我的代碼來使用它? –