2016-01-07 5 views
6
<?xml version="1.0" encoding="UTF-8"?> 
<current> 
    <city id="1259229" name="Pune"> 
     <coord lon="73.86" lat="18.52" /> 
     <country>IN</country> 
     <sun rise="2016-01-07T01:38:29" set="2016-01-07T12:42:53" /> 
    </city> 
    <temperature value="27.49" min="27.49" max="27.49" unit="metric" /> 
    <humidity value="43" unit="%" /> 
    <pressure value="955.13" unit="hPa" /> 
    <wind> 
     <speed value="2.65" name="Light breeze" /> 
     <gusts /> 
     <direction value="113.502" code="ESE" name="East-southeast" /> 
    </wind> 
    <clouds value="36" name="scattered clouds" /> 
    <visibility /> 
    <precipitation mode="no" /> 
    <weather number="802" value="scattered clouds" icon="03d" /> 
    <lastupdate value="2016-01-07T06:25:45" /> 
</current> 

Ich versuche, diese XML-Daten in CSV konvertiert ich einige Sache wie diese versucht habe, zu konvertieren, aber ich bin keine Logik Abrufen von Daten im CSV-Format zu konvertierenwie XML-Datei in CSV-Datei in Javascript

 try { 
      var file : File = new File(dw.io.File.IMPEX + '/src/weather.csv'); 
      var fileWriter : FileWriter = new FileWriter(file, 'UTF-8'); 
      var csw : CSVStreamWriter = new CSVStreamWriter(fileWriter); 
      csw.writeNext(//here I want array of string data); 
      csw.writeEndDocument(); 
      csw.close(); 
      fileWriter.close(); 
     } 
     catch(e) { 
      return PIPELET_ERROR; 
     } 

Aber ich weiß nicht, wie ich xML-Daten in Strings von Array

+2

Siehe http://stackoverflow.com/questions/7949752/cross-browser-javascript-xml-parsing für eine Möglichkeit, XML in JavaScript-Objekte zu analysieren. Dann wählen Sie die Bits aus, die Sie in Ihr Array einfügen möchten. –

Antwort

4

wie Sie verwenden serverseitige JavaScript umwandeln kann darüber hinaus DemandwareScript, überprüfen XMLStreamReader Klasse und E4X-Syntax. https://en.m.wikipedia.org/wiki/ECMAScript_for_XML E4X ist EcmaScript For Xml, eine proprietäre Syntax, die für den XML-DOM-Zugriff in Demandware verwendet wird. Sie benötigen ein weiteres File-Objekt zum Lesen der XML-Datei.

Auch Ihre XML-Datei ist nicht "flach", Sie müssten also definieren, welche XML-Elemente wo in der CSV gehen.