sortie vers un fichier .csv

sortie vers un fichier .csv - Perl - Programmation

Marsh Posté le 23-06-2005 à 10:27:34    

Bonjour,
Je suis en train de developper un progamme em Perl et je souhaite rediriger ses sorties vers un .csv
 
Mon probleme est que je souhaite creer plusieurs onglets (il y a enormement de donnees et ce sera illisible sur un seul onglet).
Je pensais utiliser le caractere \f mais ca ne marche pas...
 
Quelqu'un saurait-il comment faire?  :??:  
 
Merci d'avance   :ange:

Reply

Marsh Posté le 23-06-2005 à 10:27:34   

Reply

Marsh Posté le 23-06-2005 à 10:28:25    

Pas d'onglet dans un fichier CSV.
 
CSV (Comma-Separated Value) désigne un simple fichier texte avec des données séparées par des points-virgules.
Aucune notion de formatage.

Reply

Marsh Posté le 23-06-2005 à 10:33:18    

En effet je voulais parler d'un xls desole.
 
Je m'y perds un peu  :sweat:


Message édité par charlysk78 le 23-06-2005 à 10:34:23
Reply

Marsh Posté le 23-06-2005 à 10:41:06    

Ah, d'accord.
 
Tu utilises quel module ? Spreadsheet::WriteExcel ?

Reply

Marsh Posté le 23-06-2005 à 10:44:11    

Non,
Je redirige juste les sorties vers un fichier prealablement ouvert
 
avec un open OUT,"sortie.xls";
        select OUT;
 
Mais si tu connais d'autres solutions je suis preneur.
 
Merci :)

Reply

Marsh Posté le 23-06-2005 à 10:57:28    

charlysk78 a écrit :

Non,
Je redirige juste les sorties vers un fichier prealablement ouvert
 
avec un open OUT,"sortie.xls";
        select OUT;


 
 [:hide]  
 
Je ne connais pas le format XLS, mais tu dois méchament t'embêter alors, non ?
 
Je te propose de regarder du côté des modules CPAN (le site à consulter avant de se lancer à réinventer la roue en PERL ;) ) :
http://www.cpan.org
 
En fouinant tout à l'heure j'ai donc trouvé Spreadsheet::WriteExcel, qui semble faire tout ce que tu veux assez simplement. Par contre la doc' est énorme, vu que le module cherche à implémenter toutes les fonctions possibles d'Excel, il y a peut-être des implémentations simplifiées de ce module.
 
http://search.cpan.org/~jmcnamara/ [...] teExcel.pm

Reply

Marsh Posté le 23-06-2005 à 11:02:32    

En fait ce aue je fais est assez simple vu que a part les deux lignes que j'ai ecrites dans mon message d'avant je fais comme si je voulais ecrire a l'ecran.
 
Mais grace au module Spreadsheet::WriteExcel je pense que je pourrai manipuler mes donnes plus facilement.
 
Merci beaucoup je vais essayer de faire comme ca si je n'y arrive pas je repasserai par ici ;)
 
Bonne journee a+

Reply

Marsh Posté le 23-06-2005 à 11:10:16    

Ce module n'est pas installe la ou je travaille, dommage car ca m'aurait vraiment bien servi...
 
Quelqu'un aurait-il une solution de secours?

Reply

Marsh Posté le 23-06-2005 à 11:45:50    

A priori je dirai: installe-le :)
Je sais pas si c'est tout le temps comme ça mais l'installation de quelques modules pour ma part étaient simplement limité à une copie de fichier dans un répertoire donnée... à moins que tu ne sois pas autorisé à faire ce genre de chose !


Message édité par Gouki19 le 23-06-2005 à 11:47:07
Reply

Marsh Posté le 23-06-2005 à 12:13:27    

Si c'est pour le boulot, tu peux justifier de l'installation du module. L'équipe système qui a installé PERL doit surement savoir que PERL perd énormément de sa puissance si on n'a pas accès aux modules ad hoc. ;)
 
Si ce n'est vraiment pas possible, il va falloir que tu trouves une doc' sur le format XLS, mais comme il me semble que le format est propriétaire, ça risque de ne pas être facile. Et de te prendre beaucoup plus de temps que d'installer le module, au final.

Reply

Marsh Posté le 23-06-2005 à 12:13:27   

Reply

Marsh Posté le 23-06-2005 à 12:24:18    

Code :
  1. use Win32::OLE;


grâce à ce module et sous Windows bien entendu, j'arrive sans soucis à créer et alimenter des fichiers Excel
 
consulte la doc de Perl sur ce module


---------------
Samsung Galaxy S1 -> Samsung Galaxy S2 -> Samsung Note 2 -> Huawei Ascend Mate 7 -> ZTE Axon 7 -> OnePlus 6T -> Oppo Find X2 PRO
Reply

Marsh Posté le 23-06-2005 à 13:36:06    

Bon j'ai un peu galere mais je l'ai installe a la main :)
 
Sinon Aricoh je suis sous Linux et mon code doit etre portable sous HP-UX donc je ne penses pas pouvoir utiliser ce module...
 
Merci a tous
A bientot

Reply

Marsh Posté le 23-06-2005 à 14:46:28    

Alors,  
Le module est installe (ainsi que les 3 autres requis pour qu'il tourne), certaines fonctions marchent (new par exemple) mais impossible d'executer la fonction add_worksheet
 
:'( bizarre non? Quelqu'un saurait a quoi ca peut etre du?
 
 
EDIT : Bon en fait je peut pas la declarer (use Spreadsheet::WriteExcel qw/add_worksheet/ me dit que la fonction add_worksheet ne fait pas partie de ce module) mais je peux l'utiliser  :??:  
Donc je vais faire comme ca tant pis le module sera charge en entier a chaque fois...


Message édité par charlysk78 le 23-06-2005 à 14:51:38
Reply

Marsh Posté le 25-06-2005 à 19:21:51    

euh un .csv c'est simplement un fichier texte dont chaque colonne est séparé par un point-virgule en passant
 
excel le sépare en colonne avec ce caractère, faite vous pas chier avec des modules la...

Reply

Marsh Posté le 26-06-2005 à 08:21:11    

Il veut des onglets, pas des colonnes. :o

Reply

Sujets relatifs:

Leave a Replay

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