/***** Code de MesExemples.com *******/ import org.xml.sax.*;import org.xml.sax.helpers.*;import java.util.Properties;import org.xml.sax.*;import org.xml.sax.helpers.*;import java.util.Properties;import java.util.Enumeration;import org.apache.xerces.parsers.*;public class ParseNonXML extends DefaultHandler { public static void main(String args[]) throws SAXException { PropertyFileParser pfp = new PropertyFileParser(); pfp.setContentHandler(new ParseNonXML()); pfp.parse(buildProperties()); } public static Properties buildProperties() { Properties props = new Properties(); for (int i = 0; i < 10; i++) props.setProperty("key" + i, "value" + i); return props; } public void startDocument() { System.out.println("<keys>"); } public void endDocument() { System.out.println("</keys>"); } public void characters(char[] data, int start, int end) { String str = new String(data, start, end); System.out.print(str); } public void startElement(String uri, String qName, String lName, Attributes atts) { System.out.print("<" + lName + ">"); } public void endElement(String uri, String qName, String lName) { System.out.println("</" + lName + ">"); }}class PropertyFileParser extends SAXParser { private Properties props = null; private ContentHandler handler = null; public void parse(Properties props) throws SAXException { handler = getContentHandler(); handler.startDocument(); Enumeration e = props.propertyNames(); while (e.hasMoreElements()) { String key = (String) e.nextElement(); String val = (String) props.getProperty(key); handler.startElement("", key, key, new AttributesImpl()); char[] chars = getChars(val); handler.characters(chars, 0, chars.length); handler.endElement("", key, key); } handler.endDocument(); } private char[] getChars(String value) { char[] chars = new char[value.length()]; value.getChars(0, value.length(), chars, 0); return chars; }} |
Code testé avec le fichier XML Suivant
<?xml version="1.0" encoding="windows-1252"?> <!-- Edited by MesEXemple.com --> <note> <to>Sakoba</to> <from>Adams</from> <heading>Rappel</heading> <body>Ne m'oubliez pas ce week-end!</body> </note> |
Cet article Java XML: Analyser un fichier des propriétés est apparu en premier sur .