[PERL] lire contenu fichier .xls
Résolu/Fermé
A voir également:
- [PERL] lire contenu fichier .xls
- [PERL] lire contenu fichier .xls ✓ - Forum - Perl
- Pouvoir lire les fichiers .xls ✓ - Forum - LibreOffice / OpenOffice
- [98] lire un fichier xls ✓ - Forum - Logiciels
- Perl lire un fichier son ✓ - Forum - Perl
- Probleme pour lire un fichier xls ✓ - Forum - Windows
15 réponses
Bonjour,
Remarque:
#!C:\Perl\lib\perl.exe
Inutile sous MS-WINDOWS
Pour charger un fichier:
Pour utiliser les formats d'excel:
http://search.cpan.org/~kwitknr/DBD-Excel-0.06/Excel.pm
@+
Remarque:
#!C:\Perl\lib\perl.exe
Inutile sous MS-WINDOWS
Pour charger un fichier:
#!/usr/bin/perl -w use strict; # --- Retourne le contenu du fichier dont le chemin est passé en paramètre sub lecture { my @contenu = (); open(FILE, "$_[0]") || die "Erreur E/S: $!\n"; @contenu = <FILE>; close(FILE); return @contenu; }
Pour utiliser les formats d'excel:
http://search.cpan.org/~kwitknr/DBD-Excel-0.06/Excel.pm
@+
kij_82
9 mai 2005 à 22:43
- Messages postés
- 4088
- Date d'inscription
- jeudi 7 avril 2005
- Statut
- Contributeur
- Dernière intervention
- 30 septembre 2013
9 mai 2005 à 22:43
Alors sasuke on ne sais pas ? Fais moi le malin hein quand ta pas ton chacras...
bon, plus sérieusement essaye un truc dans le style (moi aussi je débute en Perl alors c'est possible que ce soit pas tout à fait ca !) :
Cette fonction s'appelle de la sorte : calcule("nomdufichier_avec_chemin");
Et puis apres tu fais une méthode qui ouvre une connexion à une base de donnée, tu crée ta requete et l'éxécute sur cette connexion, puis tu ferme la connexion.
Si tu ne sais pas faire les connexion, dit le et je pourrais t'aiguiller.
++
bon, plus sérieusement essaye un truc dans le style (moi aussi je débute en Perl alors c'est possible que ce soit pas tout à fait ca !) :
sub lecture { open IN, $_[0] or die "Impossible d'ouvrir le fichier $_[0] pour la cause suivante : $!\n"; my $infos_fichier = ""; while( $infos_fichier .= <IN> ) { ; } close IN; return $infos_fichier; }
Cette fonction s'appelle de la sorte : calcule("nomdufichier_avec_chemin");
Et puis apres tu fais une méthode qui ouvre une connexion à une base de donnée, tu crée ta requete et l'éxécute sur cette connexion, puis tu ferme la connexion.
Si tu ne sais pas faire les connexion, dit le et je pourrais t'aiguiller.
++
kij_82
17 mai 2005 à 11:59
- Messages postés
- 4088
- Date d'inscription
- jeudi 7 avril 2005
- Statut
- Contributeur
- Dernière intervention
- 30 septembre 2013
17 mai 2005 à 11:59
Oui en effet, j'ai tester ce que j'ai mis et il ne s'arrete pas
Faut juste mettre une condition d'arret.
Faut juste mettre une condition d'arret.
kij_82
17 mai 2005 à 12:09
- Messages postés
- 4088
- Date d'inscription
- jeudi 7 avril 2005
- Statut
- Contributeur
- Dernière intervention
- 30 septembre 2013
17 mai 2005 à 12:09
essaie ce script et utilise le à tes fin :
++
#!C:\Perl\lib\perl.exe lecture("fich.txt"); sub lecture { open IN, $_[0] or die "Impossible d'ouvrir le fichier $_[0] pour la cause suivante : $!\n"; my @infos_fichier; @infos_fichier = <IN>; my $i = 0; my $long = @infos_fichier; printf $long."\n"; while( $i < $long ){ print $infos_fichier[$i++]."\n"; } close IN; return $infos_fichier; }
++
sam3000
13 mai 2005 à 14:28
- Messages postés
- 1225
- Date d'inscription
- mercredi 22 décembre 2004
- Statut
- Membre
- Dernière intervention
- 13 juin 2005
13 mai 2005 à 14:28
slt KIJ_82,
tu es sur que ton truc fonctionne (ça ne m'en a pas l'air)
tu es sur que ton truc fonctionne (ça ne m'en a pas l'air)
merci bcp pour vos reponse cela dis j ai encore un petit truc preciser c est que je suis en linux et non en windows...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
bonjour,
je suis en linux et non en windows...
C'est mieux pour le perl.
-> la première ligne du script:
Ensuite pour rendre le script exécutable:
chmod +x mon_script.pl
Pour exécuter le script:
./mon_script.pl
Bon amusement avec perl et linux.
Cordialement,
@+
je suis en linux et non en windows...
C'est mieux pour le perl.
-> la première ligne du script:
#!/usr/bin/perl -w
Ensuite pour rendre le script exécutable:
chmod +x mon_script.pl
Pour exécuter le script:
./mon_script.pl
Bon amusement avec perl et linux.
Cordialement,
@+
dites moi, un de vous arriverai a me corriger car je vois vraiment pas l erreur que j ai faite...
#!/usr/bin/perl
sub lecture {
open (IN, "essai.xls") or die "Impossible d'ouvrir le fichier /home/hassler/Desktop/essai.xls pour la cause suivante : $!\n";
my $infos_fichier = "";
while( $infos_fichier .= <IN> ) {
;
}
close IN;
return $infos_fichier;
}
sub ecriture {
my $infos_fichier = $_[0];
open (OUT,">ecriturexls.txt");
print OUT $infos_fichier;
close(OUT);
}
$infos_fichier = &lecture;
&ecriture($infos_fichier);
#!/usr/bin/perl
sub lecture {
open (IN, "essai.xls") or die "Impossible d'ouvrir le fichier /home/hassler/Desktop/essai.xls pour la cause suivante : $!\n";
my $infos_fichier = "";
while( $infos_fichier .= <IN> ) {
;
}
close IN;
return $infos_fichier;
}
sub ecriture {
my $infos_fichier = $_[0];
open (OUT,">ecriturexls.txt");
print OUT $infos_fichier;
close(OUT);
}
$infos_fichier = &lecture;
&ecriture($infos_fichier);
Bonjour,
C'est ok commec ça?
@+
#!/usr/bin/perl -w use strict; sub lecture { my $fichier_in = "./essai.xls"; open (IN, "$fichier_in") || die "Impossible d'ouvrir le fichier essai.xls pour la cause suivante : $!\n"; my @infos_fichier = <IN>; close IN; return @infos_fichier; } sub ecriture { my $fichier_out = "./ecriturexls.txt"; open (OUT,">$fichier_out"); foreach my $valeur (@_) { print OUT $valeur; } close(OUT); } my @infos_fichier = &lecture; &ecriture(@infos_fichier);
C'est ok commec ça?
@+
merci bcp philtrain, cela fonctionne !
cela dit encore une petite question...dans je lance le script et qu il ecrit dans le fichier : ecriturexls.txt, il se trouve qu il y a ca "ÐÏࡱ" a la place des valeur de mes cellules...pkoi ? est ce le contenu de mon fichier essaixls.pl qui est cripter ou pas ?
cela dit encore une petite question...dans je lance le script et qu il ecrit dans le fichier : ecriturexls.txt, il se trouve qu il y a ca "ÐÏࡱ" a la place des valeur de mes cellules...pkoi ? est ce le contenu de mon fichier essaixls.pl qui est cripter ou pas ?
alors je me suis renseigné et j ai un peu chercher dans le cpan et mais trouvé à aucun endroit ou il parlait du fichier xls....
kij_82
25 mai 2005 à 09:01
- Messages postés
- 4088
- Date d'inscription
- jeudi 7 avril 2005
- Statut
- Contributeur
- Dernière intervention
- 30 septembre 2013
25 mai 2005 à 09:01
une bonne adresse pour toi :
http://ldp.ludost.net/linuxfocus/Francais/July2000/article156.meta.shtml
++
http://ldp.ludost.net/linuxfocus/Francais/July2000/article156.meta.shtml
++
Utilisateur anonyme
>
kij_82
25 mai 2005 à 09:30
- Messages postés
- 4088
- Date d'inscription
- jeudi 7 avril 2005
- Statut
- Contributeur
- Dernière intervention
- 30 septembre 2013
25 mai 2005 à 09:30
hello kij_82,
Attention, ushiwa a besoin de traiter des fichiers au format excel (xls) et non xsl
cordialement,
@+
Attention, ushiwa a besoin de traiter des fichiers au format excel (xls) et non xsl
cordialement,
@+
kij_82
25 mai 2005 à 10:23
- Messages postés
- 4088
- Date d'inscription
- jeudi 7 avril 2005
- Statut
- Contributeur
- Dernière intervention
- 30 septembre 2013
25 mai 2005 à 10:23
oups.. autant pour moi :)
je ne peux pas ouvrir 2 fichiers indiqués XLS je n'ai pas excel .
est-ce que ça a un rapport ? MERCI
est-ce que ça a un rapport ? MERCI
lami20j
21 mars 2007 à 21:10
- Messages postés
- 21331
- Date d'inscription
- jeudi 4 novembre 2004
- Statut
- Modérateur, Contributeur sécurité
- Dernière intervention
- 30 octobre 2019
21 mars 2007 à 21:10
Salut,
pour lire c'est le module Spreadsheet::ParseExcel qu'il faut utiliser
pour lire c'est le module Spreadsheet::ParseExcel qu'il faut utiliser
17 mai 2005 à 13:50
#C:\Perl\bin\perl.exe
soit inutile, sans cela je ne peux pas le faire chez moi.
17 mai 2005 à 17:06
@+
17 mai 2005 à 17:23