|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2004
Città: al nord
Messaggi: 3873
|
[JAVA] un parser XML
Sapete consigliarmi uno?
Possibilmente con qualche esempio. Grazie |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
// ti restiuisce outpu di trasformazione
outputTrs = creaHtml(xmlfile,xslfile); <%! public String creaHtml(String fileXml,String xslFile) { StringWriter fileHtml = new StringWriter(); try { TransformerFactory tFactory = TransformerFactory.newInstance(); Transformer transformer = tFactory.newTransformer(new StreamSource(xslFile)); //transformer.setParameter("prova",xsl_par); transformer.transform(new StreamSource(fileXml), new StreamResult(fileHtml)); } catch(Exception exc) { return "Errore:"+ exc.getMessage(); } return fileHtml.toString(); } %>
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Mar 2004
Città: al nord
Messaggi: 3873
|
Quote:
Interessante, pero' mi servirebbe come accedere al valore di un elemento... ad esempio: <...> <service> <name>Prova</name> <...> </service> vorrei il valore di <name> |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
sul forum dovrebbe esserci gia qualòcosa sollevai tempofa io la stessa questione
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Feb 2003
Città: Formia
Messaggi: 1545
|
/*
IMPORTIAMO I PACKAGE NECESSARI PER LAVORATE CON GLI XML /**/ import org.apache.xerces.parsers.DOMParser; import org.xml.sax.ErrorHandler; import org.w3c.dom.*; import java.io.IOException; public class LeggiXML { /* COSTRUTTORE CON UN PARAMETRO CHE RAPPRESENTA IL FILE DA LEGGERE /**/ public LeggiXML(String xmlFile) { /* ANCHE PER LEGGERE UN XML DOBBIAMO UTILIZZARE IL PARSER XERCES QUINDI ISTANZIAMO UN OGGETTO DOMParser /**/ DOMParser parser = new DOMParser(); try { /* IMPOSTIAMO I PARAMETRI PER IL PARSER /**/ parser.setFeature("http://xml.org/sax/features/validation", true); }catch (Exception e) { System.err.println (e); } try { /* PARSIAMO IL DOCUMENTO CON XERCES /**/ parser.parse(xmlFile); /* ISTANZIAMO UN OGGETTO DOCUMENT /**/ Document document = parser.getDocument(); /* PASSIAMO IL NOSTRO DOCUMENT AL METODO leggi() CHE LO SCORRE RICORSIVAMENTE /**/ leggi(document,0); } catch (Exception e) { System.err.println(e); } } /* METODO CHE SCORRE RICORSIVAMENTE TUTTI I NODI DEL DOCUMENTO XML. IN ENTRATA PRENDE L'OGGETTO Node DA PARSARE ED UN INTERO CHE RAPPRESENTA IL LIVELLO /**/ private void leggi(Node node, int numLevelsDeep) { int type = node.getNodeType(); if (type == Node.ELEMENT_NODE) { /* SE IL NODO RILEVATO HA VALORE <param-name> IL VALORE IN ESSO CONTENUTO VIENE STAMPATO A VIDEO /**/ if("param-name".equals(node.getNodeName())) { System.out.print("\n"+node.getFirstChild().getNodeValue()); /* SE IL NODO RILEVATO HA VALORE <param-value> IL VALORE IN ESSO CONTENUTO VIENE STAMPATO A VIDEO /**/ }else if("param-value".equals(node.getNodeName())) { System.out.print("\n"+node.getFirstChild().getNodeValue()); } } /* SE IL NODO HA NODI FIGLI RICHIAMIAMO IL METODO leggi() PASSANDOGLI IL NODO ED IL NUMERO DI LIVELLO CORRENTE + 1 /**/ NodeList children = node.getChildNodes(); if (children != null) { for (int i=0; i<children.getLength(); i++) { leggi(children.item(i), numLevelsDeep+1); } } } /* METODO MAIN DI ESECUZIONE /**/ public static void main(String[] args) { LeggiXML leggi = new LeggiXML(args[0]); } } prova cosi
__________________
Il portale delle infomazioni di Latina e Provincia Giralatina.it e’ nato con il preciso intento di promuovere varie attività che si svolgono nella provincia di Latina http://www.giralatina.it Il Blog dei Pendolari http://www.giralatina.it/blog/mybloggie/index.php |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:13.



















