Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)

Cocoon Conversion CSV vers CSV-XML

De AJLSM
Aller à la navigation Aller à la recherche

Cocoon dispose d'une classe java pour la conversion CSV vers CSV-XML.

Paramètre de conversion

[modifier | modifier le wikicode]

Avant de lancer une conversion, il est important de connaître les paramètres suivant et leur fonctions<ref>Class CSVGenerator @ Cocoon specification</ref> :

  • process-headers: whether the first line in the CSV is considered to be the header defining column names (the resulting output will be different if this is true or false (default: false) ;
  • max-records: the maximum number of records to read (default: -1 read all records) ;
  • encoding: the character encoding (UTF-8, ISO8859-1, ...) used to interpret the input CSV source file (default: system default) ;
  • separator: the field-separator character in the CSV file (comma, tab, ...) (default: , comma) ;
  • escape: the character used to escape fields, or part of them, in the CSV file (default: " quote) ;
  • buffer-size: the size of the buffer used for reading the source CSV file (default: 4096 bytes).

URL de conversion

[modifier | modifier le wikicode]

On peut convertir le fichier via une URL « publique » :

http://localhost:8080/projet/functions/csv-generator.xml?max-records=-1&process-headers=true&separator=tab&file=/chemin/vers/fichier.csv

Exemple de sortie

[modifier | modifier le wikicode]
 <?xml version="1.0" encoding="ISO-8859-1"?>
 <csv:document xmlns:csv="http://apache.org/cocoon/csv/1.0">
   <csv:header>
     <csv:column number="1">Column A</csv:column>
     <csv:column number="2">Column B</csv:column>
     <csv:column number="3">Column C</csv:column>
   </csv:header>
   <csv:record number="1">
     <csv:field number="1" column="Column A">Field A1</csv:field>
     <csv:field number="2" column="Column B">Field B1</csv:field>
     <csv:field number="3" column="Column C">Field C1</csv:field>
   </csv:record>
   <csv:record number="2">
     <csv:field number="1" column="Column A">Field A2</csv:field>
     <csv:field number="2" column="Column B">Field B2</csv:field>
     <csv:field number="3" column="Column C">Field C2</csv:field>
   </csv:record>
 </csv:document>

<references/>