Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

generer de l'xml

21 réponses
Avatar
luc2
salut,

vous me conseillez quoi comme librairies pour generer de l'xml ?

10 réponses

1 2 3
Avatar
Paul Gaborit
À (at) 02 Nov 2011 15:33:27 GMT,
luc2 écrivait (wrote):

un truc que j'aime pas avec les templates, c'est que ca fait des lignes vides
de partout dans le resultat. exemple :

<trucmachin>
[% IF name %]
<name>[% name %]</name>
[% END]
</trucmachin>

resultat :

<trucmachin>

<name> y'a des lignes vides... ca m'enerve... </name>

</trucmachin>

y'a moyen d'eviter ca ?



Plusieurs méthodes qu'on peut combiner :

- Tout mettre sur une seule ligne ! ;-)

- Passer le résultat dans un formateur.

- Utiliser '[%-' et '-%]'. En gros, le '-' mange les espaces... Mais il
vaut mieux lire la doc pour bien comprendre.

- Utiliser les BLOCK pour factoriser le code.

--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Avatar
Freddy Dissaux
Le 02 Nov 2011 15:33:27 GMT, luc2 écrivait:
un truc que j'aime pas avec les templates, c'est que ca fait des lignes vides
de partout dans le resultat. exemple :

<trucmachin>
[% IF name %]
<name>[% name %]</name>
[% END]
</trucmachin>

resultat :

<trucmachin>

<name> y'a des lignes vides... ca m'enerve... </name>

</trucmachin>

y'a moyen d'eviter ca ?


En lisant la doc ?

http://template-toolkit.org/docs/manual/Config.html
(pre_chomp, post_chomp, trim...)

--
freddy <point> dsx <arobase> free <point> fr
Avatar
luc2
Le 02-11-2011, Paul Gaborit a écrit :

un truc que j'aime pas avec les templates, c'est que ca fait des lignes vides
de partout dans le resultat. exemple :

<trucmachin>
[% IF name %]
<name>[% name %]</name>
[% END]
</trucmachin>

resultat :

<trucmachin>

<name> y'a des lignes vides... ca m'enerve... </name>

</trucmachin>

y'a moyen d'eviter ca ?



Plusieurs méthodes qu'on peut combiner :

- Tout mettre sur une seule ligne ! ;-)

- Passer le résultat dans un formateur.

- Utiliser '[%-' et '-%]'. En gros, le '-' mange les espaces... Mais il
vaut mieux lire la doc pour bien comprendre.

- Utiliser les BLOCK pour factoriser le code.



j'y arriv' pas... j'ai fait ca :

<trucmachin>
[%- IF name %]
<name>[% name %]</name>
[%- END]
</trucmachin>

...mais je sens deja que vous allez me mettre 0/20...
Avatar
Paul Gaborit
À (at) 03 Nov 2011 14:12:11 GMT,
luc2 écrivait (wrote):


j'y arriv' pas... j'ai fait ca :

<trucmachin>
[%- IF name %]
<name>[% name %]</name>
[%- END]
</trucmachin>

...mais je sens deja que vous allez me mettre 0/20...



Moi ? Non. Mais Template Toolkit le fera tout seul : il y a une erreur
de syntaxe pour le END ! ;-)

--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Avatar
Paul Gaborit
À (at) Thu, 03 Nov 2011 16:28:22 +0100,
Paul Gaborit écrivait (wrote):

À (at) 03 Nov 2011 14:12:11 GMT,
luc2 écrivait (wrote):


j'y arriv' pas... j'ai fait ca :

<trucmachin>
[%- IF name %]
<name>[% name %]</name>
[%- END]
</trucmachin>

...mais je sens deja que vous allez me mettre 0/20...



Moi ? Non. Mais Template Toolkit le fera tout seul : il y a une erreur
de syntaxe pour le END ! ;-)



Ci-dessous le lien vers la partie de la documentation qui explique tout
ça :

<http://template-toolkit.org/docs/manual/Config.html#section_PRE_CHOMP_POST_CHOMP>

Ça permet de comprendre l'usage de [%-, [%= et [%~...


--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Avatar
luc2
Le 03-11-2011, Paul Gaborit a écrit :

j'y arriv' pas... j'ai fait ca :

<trucmachin>
[%- IF name %]
<name>[% name %]</name>
[%- END]
</trucmachin>

...mais je sens deja que vous allez me mettre 0/20...



Moi ? Non. Mais Template Toolkit le fera tout seul : il y a une erreur
de syntaxe pour le END ! ;-)



Ci-dessous le lien vers la partie de la documentation qui explique tout
ça :

<http://template-toolkit.org/docs/manual/Config.html#section_PRE_CHOMP_POST_CHOMP>

Ça permet de comprendre l'usage de [%-, [%= et [%~...



j'ai lu la doc, mais que ce soit [%- [%= ou [%~, je ne trouve pas le symbole
qui correspondrait a ce que je veux.
Avatar
Paul Gaborit
À (at) 04 Nov 2011 08:52:17 GMT,
luc2 écrivait (wrote):

j'ai lu la doc, mais que ce soit [%- [%= ou [%~, je ne trouve pas le symbole
qui correspondrait a ce que je veux.



J'ai bien regardé ma boule de cristal... mais je n'arrive pas à
distinguer ce que vous voulez !

--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Avatar
luc2
Le 04-11-2011, Paul Gaborit a écrit :

j'ai lu la doc, mais que ce soit [%- [%= ou [%~, je ne trouve pas le symbole
qui correspondrait a ce que je veux.



J'ai bien regardé ma boule de cristal... mais je n'arrive pas à
distinguer ce que vous voulez !



je veux ca :

<trucmachin>
<name> manuel dusapin </name>
</trucmachin>

je veux pas ca :

<trucmachin>

<name> y'a des lignes vides... ca m'enerve... </name>

</trucmachin>

evidemment, j'aimerais le faire correctement, comme un programmeur perl
experimente. une methode qui fonctionne ne me suffit pas.

ma methode fonctionne, mais je sens bien que c'est n'importe quoi :

<trucmachin>
[%- IF name %]
<name>[% name %]</name>
[%- END %]
</trucmachin>

si vous n'avez pas mieux, c'est pas grave, je me contenterai de ca. je ne vous
demande pas de chercher a ma place, je vous demandais juste au cas ou vous
auriez deja fait ca, et que vous auriez toujours la solution en tete.
Avatar
Paul Gaborit
À (at) 04 Nov 2011 14:33:40 GMT,
luc2 écrivait (wrote):

je veux ca :

<trucmachin>
<name> manuel dusapin </name>
</trucmachin>

je veux pas ca :

<trucmachin>

<name> y'a des lignes vides... ca m'enerve... </name>

</trucmachin>

evidemment, j'aimerais le faire correctement, comme un programmeur perl
experimente. une methode qui fonctionne ne me suffit pas.

ma methode fonctionne, mais je sens bien que c'est n'importe quoi :

<trucmachin>
[%- IF name %]
<name>[% name %]</name>
[%- END %]
</trucmachin>



Pourquoi est-ce n'importe quoi ? Pourquoi cette solution ne vous
convient-elle pas ? Comprenez-vous pourquoi elle fonctionne comme vous
le souhaitez ?

si vous n'avez pas mieux, c'est pas grave, je me contenterai de ca. je ne vous
demande pas de chercher a ma place, je vous demandais juste au cas ou vous
auriez deja fait ca, et que vous auriez toujours la solution en tete.



Je pensais qui vous souhaitiez apprendre à vous servir de Template
Toolkit en général... et non que quelqu'un vous donne la solution à ce
petit problème particulier.

--
Paul Gaborit - <http://perso.mines-albi.fr/~gaborit/>
Perl en français - <http://perl.mines-albi.fr/>
Avatar
Klaus
On 4 nov, 15:33, luc2 wrote:
Le 04-11-2011, Paul Gaborit a écrit :
je veux ca :

<trucmachin>
  <name> manuel dusapin </name>
</trucmachin>

je veux pas ca :

<trucmachin>

  <name> y'a des lignes vides... ca m'enerve... </name>

</trucmachin>

evidemment, j'aimerais le faire correctement, comme un programmeur perl
experimente. une methode qui fonctionne ne me suffit pas.



use strict;
use warnings;

use XML::Writer;

open my $xml, '>', 'test.xml' or die $!;
my $wrt = XML::Writer->new(OUTPUT => $xml,
DATA_MODE => 1, DATA_INDENT => 2);

$wrt->startTag('trucmachin');
$wrt->dataElement('name', 'manuel dusapin');
$wrt->endTag('trucmachin');

$wrt->end;
close $xml;
1 2 3