2015-11-04 89 views
0

我在河有一個XML文件中的XML文件是這樣的:獲取變量

<pdv id="1000001" latitude="4620114" longitude="519791" cp="01000" pop="R"> 
    <adresse>ROUTE NATIONALE</adresse> 
    <ville>SAINT-DENIS-LèS-BOURG</ville> 
    <ouverture debut="01:00" fin="01:00" saufjour=""/> 
    <services> 
    <service>Automate CB</service> 
    <service>Vente de gaz domestique</service> 
    <service>Station de gonflage</service> 
    </services> 
    <prix nom="Gazole" id="1" maj="2014-01-02 11:08:03" valeur="1304"/> 
    <prix nom="SP98" id="6" maj="2014-12-31 08:39:46" valeur="1285"/> 
    [....] 
    <fermeture/> 
    <rupture/> 
</pdv> 

我想減去大約ID =「1000001」和緯度信息= 「4620114」(XML文件的第一行)並將其放入矩陣中。

但是當我運行:

rootNode[[1]] 

我得到的XML文件的第二行:路線nationale

我有什麼做的就是第一行(緯度,經度和id信息),並把它放在一個矩陣?

+0

你是如何創建'rootNode'對象? – Rumoku

+0

我用rootNode < - xmlRoot(xmlfile) – Jeisson

回答

0

您正試圖提取元素的屬性。 檢查函數xpathApply爲此目的

Smth如下。

# Using xpathApply, we can do 
latitude = xpathApply(doc, "/pdv", xmlGetAttr, "latitude", namespaces = namespaces) 
latitude = unlist(latitude) 
# Using an expression rather than a function and ... 
latitude = xpathApply(doc, "/pdv", 
quote(xmlGetAttr(x, "latitude")), namespaces = namespaces) 

Documentation on work with xml .

+0

謝謝,但我有這個錯誤:錯誤是(名稱空間,「列表」):找不到對象的名稱空間 – Jeisson

+0

它的工作,但沒有,名稱空間=名稱空間 – Jeisson