Il Parsing di XML in JSON

Ho un file XML, come

<stock><name>AXL</name><time>19-07</time><price>11.34</price></stock>
<stock><name>AIK</name><time>19-07</time><price>13.54</price></stock>
<stock><name>ALO</name><time>19-07</time><price>16.32</price></stock>
<stock><name>APO</name><time>19-07</time><price>13.56</price></stock>
...............more

Come posso analizzare questo in struttura JSON file?

  • Che cosa si intende per “sacco di dati”? Inoltre, perché i tappi?!
  • In che lingua o di sistema?
  • Vuoi farlo in Javascript O in JAVA
  • java e javascript sono OK. cuz io uso jquery per disegnare la linea del grafico con il valore del prezzo. con java, ican parase e generare un jason file, quindi utilizzando jquery ajax funzione per la lettura e passare alla funzione draw.
InformationsquelleAutor SPG | 2011-07-19

 

2 Replies
  1. 18

    Per una soluzione semplice, mi raccomando Jackson, una libreria Java per la generazione e la lettura JSON con estensione XML, in quanto si può trasformare arbitrariamente complesso di XML in JSON con pochi e semplici righe di codice.

    input.xml

    <entries>
      <stock><name>AXL</name><time>19-07</time><price>11.34</price></stock>
      <stock><name>AIK</name><time>19-07</time><price>13.54</price></stock>
      <stock><name>ALO</name><time>19-07</time><price>16.32</price></stock>
      <stock><name>APO</name><time>19-07</time><price>13.56</price></stock>
    </entries>

    Il Codice Java:

    import java.io.File;
    import java.util.List;
    
    import org.codehaus.jackson.map.ObjectMapper;
    
    import com.fasterxml.jackson.xml.XmlMapper;
    
    public class Foo
    {
      public static void main(String[] args) throws Exception
      {
        XmlMapper xmlMapper = new XmlMapper();
        List entries = xmlMapper.readValue(new File("input.xml"), List.class);
    
        ObjectMapper jsonMapper = new ObjectMapper();
        String json = jsonMapper.writeValueAsString(entries);
        System.out.println(json);
        //[{"name":"AXL","time":"19-07","price":"11.34"},{"name":"AIK","time":"19-07","price":"13.54"},{"name":"ALO","time":"19-07","price":"16.32"},{"name":"APO","time":"19-07","price":"13.56"}]
      }
    }

    Questa demo utilizza Jackson 1.7.7 (il più recente 1.7.8 dovrebbe anche lavorare), Jackson XML Databind 0.5.3 (non ancora compatibile con Jackson 1.8), e Stax2 3.1.1.

    • È che in qualsiasi modo senza l’utilizzo di una terza parte roba?
    • No, non proprio. Avrete bisogno di una libreria da qualche parte, in quasi tutte le lingue, anche se credo che si potrebbe essere in grado di evitare l’uso di una libreria iff è utilizzato Groovy, che è molto sforzo, come l’aggiunta di una libreria. Conoscere il classpath quindi scaricare i barattoli: suggerimento, guarda i nomi dei pacchetti.
    • Per i nuovi download di Jackson, vedi github.com/FasterXML/jackson-dataformat-xml/wiki

Lascia un commento