perl et xslt ???

perl et xslt ??? - Perl - Programmation

Marsh Posté le 09-10-2006 à 16:24:39    

salut,
 
Je fait ce traitement en perl

Code :
  1. # !/usr/bin/perl
  2. use XML::XSLT;
  3. my $xslfile = "a.xsl";
  4. my $xmlfile = "b.xml";
  5. my $xslt = eval { XML::XSLT->new ($xslfile, warnings => 1, debug => 0) };
  6. if ($@) {
  7. die("Sorry, Could not create an instance of the XSL Processor using $xslfile.\n" );
  8. }
  9. eval { $xslt->transform ($xmlfile) };
  10. if ($@) {
  11. die("Sorry, Could not transform XML file, $xmlfile.\n" );
  12. }
  13. print $xslt->toString;
  14. $xslt->dispose();


 
et je souhaiterais recuperer le resultat dans un fichier .html et nom dans l'invite de commande .
COmment pourrai je faire ?
 
Merci

Reply

Marsh Posté le 09-10-2006 à 16:24:39   

Reply

Marsh Posté le 09-10-2006 à 16:53:57    

bin ton print tu le fais dans un fichier préalablement ouvert [:w3c compliant] [:w3c compliant] [:w3c compliant]
ou alors tu rediriges la sortie standard lors de l'appel de ton script perl vers un fichier  
ou encore tu te sers des outils fait pour au lieu de réinventer la roue:

Code :
  1. xsltproc a.xsl a.xml | xmllint --html -

Reply

Marsh Posté le 09-10-2006 à 17:11:01    

j'ai fait cela

Code :
  1. open FILE, ">>sortie.html" or die "Ne peut pas ouvrir le fichier html !!";
  2. print $xslt->toString;


 
mais mon fichier et vide et ne contient rien

Reply

Marsh Posté le 09-10-2006 à 17:52:42    

Code :
  1. print FILE xslt->toString;


et n'oublie pas le close.
 
Par ailleurs, amha et au vue des questions que tu poses sur le forum, je pense que la tache qui t'a été confiée dépasse quelque peu tes compétences. Tu devrais essayer de pas tout mélanger/apprendre en même temps.


Message édité par anapajari le 09-10-2006 à 17:52:55
Reply

Marsh Posté le 10-10-2006 à 09:05:34    

je suis d'accord avec toi
je vais essayer de me retrouver un cours sur le net plus pointu que celui que j'ai suivi
parcequ'apparament il y a beaucoup de chose non traité dans ce cours

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed