2012-06-05 21 views
5

Próbuję analizować i wyszukiwać element w xml za pomocą xml2js. Mój xml ciąg jest następujący:Węzeł do analizowania xml przy użyciu xml2js

var xml = "<config><test>Hello</test><data>SomeData</data></config>"; 

Co chcę jest, aby wyodrębnić wartość i przypisać ją do var extractedData

Oto co mam do tej pory:

var parser = new xml2js.Parser(); 
parser.parseString(xml, function(err,result){ 
    //Extract the value from the data element 
    extractedData = result['data']; 
} 

To nie działa . Czy ktoś może wskazać, w jaki sposób mogę pobrać wartości z mojego xml?

Dzięki

To nie wydają się działać. Czy ktoś może mi powiedzieć, jaki może być problem?

Odpowiedz

14

to działa na mnie

var xml2js = require('xml2js'); 
var xml = "<config><test>Hello</test><data>SomeData</data></config>"; 

var extractedData = ""; 
var parser = new xml2js.Parser(); 
parser.parseString(xml, function(err,result){ 
    //Extract the value from the data element 
    extractedData = result['config']['data']; 
    console.log(extractedData); 
}); 
console.log("Note that you can't use value here if parseString is async; extractedData=", extractedData); 

wynik:

SomeData 
Note that you can't use value here if parseString is async; extractedData= SomeData 
+3

Jak mogę wydrukować dane, które znajduje się w 5 lub 6 poziomu głębokości –

+0

@Vishwanathgowdak użyć 'util.inspect()'; Zobacz akceptowaną odpowiedź tutaj, aby uzyskać szybki przykład: http://stackoverflow.com/questions/10729276/how-can-i-get-the-full-object-in-node-js-console-log-rather-than- obiekt Oto szybkie i brudne podejście: 'console.log (require ('util'). inspect (result, false, null));' – Josh1billion

Powiązane problemy