Bonsoir tous !
jai donc ce fichier xml :
<interpreter-configuration>
<tags>
<tag id="01" name="tag1">
<lenght>taille1</lenght>
<data>value</data>
</tag>
<tag id="02" name="tag2">
<lenght>taille1</lenght>
<data>value</data>
</tag>
</tags>
</interpreter-configuration>
Je souhaiterai recupéré le name de mon tag(attr name), sachant que je connais l'id(attr id), ainsi que le contenu de la balise lenght et data.
jai commencé a écrire ca mais je men sort pas... si vous pouviez m'aider a recuperer ces informations :
import java.lang.String;
import java.util.HashMap;
import java.util.Vector;
import org.xml.sax.*;
import org.apache.xerces.parsers.DOMParser;
import org.w3c.dom.*;
import java.io.*;
public class XML {
public static void main(String args[]) throws Exception {
XML m = new XML();
}
public XML() {
RechercheXml();
}
public static Element findFirstElement( Element element, String name )
{
NodeList nl = element.getElementsByTagName( name );
if ( nl.getLength() < 1 )
throw new NullPointerException(
"Element: "+element+" ne contient pas: "+name);
return (Element)nl.item(0);
}
public static Vector trouveAttribut( Element element, String nom )
{
Vector attr = new Vector(1);
HashMap map = new HashMap();
Element elementNom = element;
if (nom != null)
elementNom = findFirstElement( element, nom );
NamedNodeMap attributs = elementNom.getAttributes();
for(int i=0; i<attributs.getLength(); i++)
{
Node numéro = attributs.item(i);
map.put("nom",numéro.getNodeName());
map.put("valeur",numéro.getNodeValue());
attr.addElement(map);
}
return attr;
}
public static HashMap trouveAttribut(Node node)
{
HashMap map = new HashMap();
NamedNodeMap attributs = node.getAttributes();
for(int i=0; i<attributs.getLength(); i++)
{
Node numéro = attributs.item(i);
map.put("nom",numéro.getNodeName());
map.put("valeur",numéro.getNodeValue());
}
return map;
}
public static String findText(Element element)
{
return element.getFirstChild().getNodeValue();
}
public void RechercheXml() {
DOMParser parser = new DOMParser();
String fichier = new String("c:/test/TLVConfiguration.xml");
try
{
parser.parse(fichier);
}
catch (SAXException e)
{
}
catch (IOException e)
{
}
Document document = parser.getDocument();
Element database = document.getDocumentElement();
System.out.println(database);
for (int i = 0; i < database.getLength(); i++)
{
NodeList tag = element.getElementsByTagName("FormatSortie");
}
}
}
Merci a vous ;)
bonne soirée.