begin process at 2010 02 10 08:50:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Débutant(e)

 > 

Traiter un ensemble de fichiers en boucle avec XSLT


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Traiter un ensemble de fichiers en boucle avec XSLT

lundi 12 mars 2007 à 22:04:08 | Traiter un ensemble de fichiers en boucle avec XSLT

caro_perf

Membre Club

Bonjour,

J'utilise xslt pour tranformer un xml plat vers un xml structuré. Le xml plat je l'obtiens suite à un parsing d'un ensemble de fichiers textes contenus dans différents répertoires.
Le problème c'est que si un fichier plante tout le traitement de mon appli plante. Donc je voudrais savoir si je peux faire tourner un xslt en boucle telque:
for (File subfolder : directories) {
et comment concaténer par la suite les différents xml généré par le xslt ?
voici mon main :

public class Process {
public static void main(String[] args) {
new Process(args[0]);
}
/**
* @param folderName
* The folder path and name.
*/
 
public Process(String folderName) {
if (!folderName.isEmpty()) {
try {
// TODO Debug
System.out.println("Processus of: " + folderName);

// input file (flat xml) // cette classe met tt dans un seul fichier plat
 
Xmlprocess sub = new Xmlprocess(folderName);

StringBuffer flatXml = sub.serialize();
ByteArrayInputStream xml = new ByteArrayInputStream(flatXml.toString().getBytes());
// XSL template
InputStream xslt = getClass().getResourceAsStream("/xslt/transform.xslt");
// output file
FileOutputStream output = new FileOutputStream(folderName+ "\\out.xml" );
//
XsltParser.parse(xml, xslt, output);

output.close();
xslt.close();
xml.close();
// TODO Debug
 
System.out.println("Ouput XML file successfully written to: "+ folderName + "\\schema.xml");
s_logger.debug("Ouput XML file successfully written to: "+ folderName + "\\schema.xml");
 
} catch (IOException e) {
s_logger.error("This path doesn't exist or is invalid or is empty (check if it's a directory): " + folderName);
}
} else {
// TODO
s_logger.error("This path doesn't exist or is invalid or is empty (check if it's a directory): " + folderName);
// /e.printStackTrace();
}
}
}
 



et voici ma classe Xmlprocess qui génère le xml plat

Code :
public class Xmlprocess implements XmlSerializer {
 
/**
* The subscriptions root folder path.
*/
private String folderName;
 
public Xmlprocess(String folderName) {
this.folderName = folderName;
}
 
public StringBuffer serialize() throws XmlException {
StringBuffer xml = new StringBuffer();
 

File directory = new File(folderName);
if (directory.exists() && directory.isDirectory()) {
File[] list = directory.listFiles();

if (list != null) {
 
xml.append("<?xmlversion=\"1.0\"encoding=\"utf-8\"?>\n");
 
// read all the folder content and process each parts
xml.append("<subscriptions>\n");
 
// find the subscriptions (subfolders)...
File[] directories = directory.listFiles(new FileFilter() {
public boolean accept(File f) {
return f.isDirectory();
}
});
// ... and process them
 
int numeroOrdre = 1;
for (File subfolder : directories) {
XmlParse xmls = new XmlParse(subfolder.getAbsolutePath(), numeroOrdre);
xml.append(xmls.serialize());
numeroOrdre++;
}
} else {
s_logger.debug("This path doesn't exist or is invalid or is empty (check if it's a directory): "+ folderName);
}
} else {
s_logger.debug("This path doesn't exist or is invalid or is empty (check if it's a directory): "+ folderName);
}
xml.append("</subscriptions>");
return xml;
}
}
 

Merci infiniment

mardi 13 mars 2007 à 00:32:29 | Re : Traiter un ensemble de fichiers en boucle avec XSLT

caro_perf

Membre Club

heeeeeeeeeeeeeeeeeeeeeelp



Cette discussion est classée dans : file, xml, directory, xslt, foldername


Répondre à ce message

Sujets en rapport avec ce message

Mettre certaines balises XML dans un fichier a partir d'un arbre DOM [ par Ekik ] Bonjours,Voila mon problème:J'ai un fichier xml, et je dois prendre toutes les balises pour les mettre dans un autre fichier xml. J'ai ce code ici, convertir XML --> PDF! [ par Jaguar2005 ] Salam amigo,je suis content d'être parmi vous!!   bon je suis entrain de réaliser un code en java qui permet de génerer un file PDF à partir d'un file xml ... associer un styleSheet [ par heraclesss ] Salut à tous ! J'ai développé quelques petits outils en java pour travailler avec du xml. J'ai une fonction qui cré un xml à partir d'un objet de typ les limites d'XSLT par rapport à JAVA [ par naji222 ] Bonjour, je souhaite passer d'un schema XML à un autre, j'ai commencé à le faire avec JAVA/DOM, mais on m'a dis que je peux faire la même chose avec X Transformation XSLT/XML/HTML [ par EMSIEN ] Bonjour tout le monde,Tout d'abrd, je n'ai pas trouvé une rubrique spécial XML/XSLT..., donc puisque je suis sous JSP, j'ai posé la question ici.J'ai xml - xslt - java --> HTML [ par HFanny ] Bonjour à tous,Je voudrais savoir s'il est possible, à partir d'une jsp, de "construire" un document contenant à la fois du HTML pur, ainsi que du XML entrer le doc xml en paramètre???????? [ par blatifa2008 ] Bonjour,j'ai posé mon problème plusieur fois et j'ai essayer de le résoudre mais je n'arrive à rien svp s'il y a qlq un peut m'aider parce que c'est t arabe [ par nabilwael ] Bonjour , jé réalisé une classe qui permer de parser un fichier XML en arab et enregistrer le resultat dans un fichier texte mais le résultat est diff java-xslt-xml [ par sunita85 ] Salut a tousest ce qu'il y a quelqu'un qui peut me fournir un code source java qui prend en entrée un fichier xml et un autre xslt pour regénérer un f Probleme avec XML file reading [ par Nkunzis ] Salut j ai un probleme avec xml file....j arrive pas a lire tout le contenue du fichierje suis debutant avec xml files.je sais pas exactement la ou se


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,640 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales