1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70
|
// recuperation des balises cc et to du fichier xml de automatcrl
public void getXml() {
try {
SAX SAXHandler = new SAX();
SAXParser parser = (SAXParserFactory.newInstance()).newSAXParser();
File fichier = new File(repCrl+ "\\automatcrl.xml");
parser.parse(fichier, SAXHandler);
} catch (Exception ex) {
System.out.println("Erreur dans le fichier xml");
System.err.println(ex);
System.exit(10);
}
}
// class handler du fichier xml
// reaction en fonction des balises
public class SAX extends DefaultHandler {
// savoir si on est dans une balise precise pour la lecture des data
// ici on recupere la valeure des balise to et cc
boolean into;
boolean incc;
public void startElement(String uri, String localName, String rawName,
Attributes attributes) {
if (rawName.equals("to")) {
into = true;
} else if (rawName.equals("cc")) {
incc = true;
} else if (rawName.equals("mail")) {
try {
servMail=attributes.getValue("server");
}catch (Exception e) {
System.err.println("Probleme serveur de mail");
}
}
}
public void endElement(String uri, String localName, String rawName) {
if (rawName.equals("to")) {
into = false;
} else if (rawName.equals("cc")) {
incc = false;
}
}
public void characters(char[] ch, int start, int length)
throws SAXException {
String lecture = new String(ch, start, length);
if (into) {
mailCrlTo=lecture;
} else if (incc) {
mailCrlCc=lecture;
}
}
public void startDocument() {
//System.out.println("Début du parsing");
}
public void endDocument() {
//System.out.println("Fin du parsing");
}
} |
Partager