Rechercher : dans
Par :

Perl: lecture et ecriture ds 1 fichier

Dernière réponse le 8 aoû 2005 à 01:44:52 Max, le 3 aoû 2005 à 13:22:19 
 Signaler ce message aux modérateurs

Bonjour,

Langage perl

En entrée j'ai un fichier .txt.
Je veux lire ce fichier et écrire dans certains champs d'un autre fichier qui sera utliser pour la jour une table de la base Oracle.

J'ai la structure de mon fichier .txt (champs et position)

Comment faire ?

Merci d'avance pour votre contribution

Configuration: WNNT, UNIX,

Meilleures réponses pour « Perl: lecture et ecriture ds 1 fichier » dans :
Comment lire un fichier ligne par ligne VoirComment lire un fichier ligne par ligne Préambule Boucle while Syntaxe Exemple Astuces Bonus Boucle for Syntaxe Préambule Une des erreurs les plus communes dans l'apprentissage des scripts "bash" sous GNU/LInux pour lire un fichier...
[Gravure] Graver ou lire un fichier .BIN / .CUE VoirLes fichiers .bin et .cue sont respectivement : .BIN : une image de CD, c'est-à-dire une copie binaire d'un CD ou d'un DVD sous forme d'un fichier .CUE : informations sur les pistes du disque. Les fichiers .BIN / .CUE sont utilisables par...
Fichier CDA VoirFormat CDA Un fichier CDA est le plus souvent un fichier-"plage" (ou "piste") directement issu d'un CD audio. Lire un fichier CDA Pour lire de tels fichiers, il suffit de télécharger un lecteur capable de lire les CD audio, par exemple...
Fichier MOV VoirFormat MOV Un fichier MOV (Quicktime Movie) est un fichier vidéo propriétaire de la firme Apple, prévu pour être lu en streaming. Lire un fichier MOV Pour lire un tel fichier, il suffit d'utiliser le logiciel Quicktime Alternative
Fichier RA VoirFormat RA Un fichier RA (Real Audio) est un fichier audio prévu pour être lu en streaming. Pour lire un tel fichier, il suffit d'utiliser le logiciel suivant : Real Alternative

1

mamiemando, le 4 aoû 2005 à 01:49:04

Tu peux trouver les bases ici :
http://www.med.univ-rennes1.fr/~poulique/cours/perl/introper­l.html

Mais je ne suis pas sûr que tu puisses facilement modifier le contenu du fichier. Pour moi il faut que tu prennes le fichier squelette en paramètre, que tu le passes à ton programme perl, et que tu génère un fichier rempli en sortie...

Bonne chance

Répondre à mamiemando

2

Max, le 4 aoû 2005 à 08:52:46

Merci pour la contribution

Effectivement, j'ai en variables, le squellette de mon fichier. Mais pour le fichier en sortie, la structure est differente.

Je rame à ce niveau. une redirection ne suffit pas!!!

comment ecrire dans ce fichier dont la structure n'est declarée.

merci d'avance

Répondre à Max

3

mamiemando, le 4 aoû 2005 à 18:02:46

Ben il suffit d'ouvrir un fichier en lecture, récupérer les données interessantes, faire tes calculs, puis écrire le fichier de sortie en conséquence...

#!/usr/bin/perl -w

($f,$out) = @ARGV;
if (@ARGV!=2){
    print "Usage : $0 fichier_in fichier_out \n";
    die "$!\n";
}

open FICHIER, "$f";
open OUT, "> $out";

#Lire le fichire d'entrée

#Ecrire le fichier de sortie

close FICHIER;
close OUT;

Non ? Ou j'ai mal compris ?

Bonne chance en tout cas

Répondre à mamiemando

4

Max, le 5 aoû 2005 à 14:31:52

Merci encore mamiendo

une derniere question sur la structure du fichier en sortie.

A quel niveau dois je declarer ma structure.

Je vois un peu plus clair avec ton aide.

Bon courage

Répondre à Max

5

mamiemando, le 5 aoû 2005 à 15:41:52

Tu l'écris dans l'ordre ;)

#....
#$out nom du fichier de sortie
open OUT, "> $out";
#...
print OUT "J'ecris le contenu de la table de hachage hash que j'ai deja rempli auparavant dans mon joli programme perl\n";

foreach $i (sort keys %hash){
    if (defined($hash{$i})){
        print OUT "$hash{$i}\n";
    }
}

#...
close OUT;

Répondre à mamiemando

6

Max, le 6 aoû 2005 à 18:18:26

Mamiemando,

Comment transformer un fichier plat sans separateur, en un fihier
avec des champs separés par une virgule.

langae perl

au secours

Répondre à Max

7

 mamiemando, le 8 aoû 2005 à 01:44:52
Répondre à mamiemando