Node CSV, le parseur JavaScript de fichiers CSV
Node CSV, le parseur JavaScript de fichiers CSV
Le projet Node CSV fournit un parseur de fichiers CSV. En impl�mentant des m�canismes de lecture/�criture de flux, ce module peut analyser des fichiers CSV avec moins de m�moire par rapport � la lecture de l'int�gralit� du fichier en m�moire. Il a �t� test� et utilis� sur un gros fichier (plus de 2 Go).
En voici quelques caract�ristiques :
- respecte l'API streaming de NodeJS ;
- s'appuie sur l'asynchronisme et les �v�nements ;
- prend en charge les d�limiteurs, les quotes et les caract�res d'�chappement ;
- d�tecte les sauts de ligne ;
- supporte de grands ensembles de donn�es ;
- aucune d�pendance externe.
Vous pouvez l'utiliser de la mani�re suivante :
Code:
1 2 3
| fs.createReadStream('./in')
.pipe(csv())
.pipe(fs.createWriteStream('./out')); |
Ou bien ainsi :
Code:
1 2 3
| csv()
.from.path('./in')
.to.string(function(data) { console.log(data); }); |
Vous pouvez �galement ajouter des options de cette mani�re :
Code:
from.options({ option: 'value' })
L'outil en est maintenant � sa version 0.2.
:fleche: Le code source sur GitHub.
:fleche: Le site officiel.
:fleche: D'apr�s un article sur DailyJS. Cet article parle �galement de Memoize.
:fleche: Les meilleurs cours et tutoriels pour apprendre Node.js
Explications du module csv de Node.js
Bonjour,
Je souhaite transformer des fichier csv en graphiques et les afficher gr�ce a ajax sur mon site web. Pour cela j'ai vu qu'il y a une biblioth�que javascript Highcharts mais comme j'utilise un serveur Node.js, j'aimerai utiliser le module csv. J'ai vu qu'il �tait d�coup� en 4 petits modules:
csv-generate
csv-parse
stream-transform
csv-stringify
mais je ne comprend pas tr�s bien comment cela fonctionne. D'apr�s ce que j'ai compris, cvs-generate permet de cr�er un fichier csv, csv-parse permet de transformer un fichier text en csv, csv-stringify fait le contraire et le stream-transform? Dans mon cas �tant donn� que j'ai d�j� mes fichiers csv, il me semble que je n'en ai pas besoin. Pourriez-vous m'�clairer?
Merci d'avance.