0
看起來,libxml2只有4種數據類型,即xmlChar,xmlDoc,xmlNodePtr和xml- 節點。我想在XML的節點中保留整數和雙精度,我是否必須每次都將它們轉換爲字符串,或者有沒有其他方法可以在沒有任何投射的情況下執行?使用libxml2在XML節點中存儲字符串以外的數據類型
看起來,libxml2只有4種數據類型,即xmlChar,xmlDoc,xmlNodePtr和xml- 節點。我想在XML的節點中保留整數和雙精度,我是否必須每次都將它們轉換爲字符串,或者有沒有其他方法可以在沒有任何投射的情況下執行?使用libxml2在XML節點中存儲字符串以外的數據類型
您必須將它們轉換爲字符串。 XML沒有「integet」或「float」的概念,它都是文本。有些技術可以將這些概念分層(比如XSD),而不是XML本身。
同樣,當你解析XML並獲取節點的內容時,你只能得到你必須自己轉換的字符串。
謝謝您的回答。但XSD似乎有這樣的事情。例如,它可以指示某個特定的節點應該存儲某種特定的數據類型,這是爲了幫助程序員找出哪種類型存儲在XML中的節點中並進行相應的轉換? – bfaskiplar 2012-07-10 23:33:56
理論上可以使用XSD,這是SOAP API在通過XML傳輸時使用的。儘管libxml不會讀取XSD信息,但它直接在XML的「較低級別」上運行。 – 2012-07-11 02:06:39