IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Fortran Discussion :

Importation et lecture d'un fichier .Dat


Sujet :

Fortran

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2009
    Messages : 15
    Par défaut Importation et lecture d'un fichier .Dat
    Bonjour à tous;
    je voulais demander si quelqu'un pourrait m'aider à résoudre mon pbroblème: je veux importer un fichier de données (.dat) qui est un résultat d'un programme écrit sous fortran, je veux le lire et l'utiliser dans un autre programme en Fortran, Comment pourrais-je faire une telle manoeuvre?
    Merci

  2. #2
    Membre émérite Avatar de genteur slayer
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2002
    Messages
    710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2002
    Messages : 710
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    open(unit=10,file="file.dat",status="unknown")
    ça c'est pour ouvrir un fichier formatté....
    si tu en veux plus, il va falloir renseigner un ^peu plus: quel est le format du fichier (ascii ou bianire) dans quel ordre sont écrit les valeurs, etc... et ".dat" n'est qu'un nom, cela ne reseigne que très peu sur le type de fichier...

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Avril 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2010
    Messages : 88
    Par défaut
    en ce qui concerne la lecture du fichier :

    la commande générale est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    read(unit,*) ! tu lis ce qui est écrit dans la ligne
    si tu veux stocker une variable quelconque, il faut mentionner son type et si possible son format :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ! declare le type de variable
    read(unit,format) variable
    tu peux voir la varibale que tu as lue par un print.
    en ce qui concerne les formats, c'est du "a" pour les caractères, "i" pour les entier et "e" ou "f" pour les réels, de la forme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    character*32 toto
    read(unit,'(a6)') toto
    ! tu lis 6 caractères

    Manal

  4. #4
    Membre émérite Avatar de genteur slayer
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2002
    Messages
    710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2002
    Messages : 710
    Par défaut
    il y a bien plus de format que cela, voir les 'es' 'h' 'x' et tu peut même mettre du texte statique dans tes formats...
    cela dit, écrire en ascii a ses avantages mais aussi ses inconvéniant comme par exemple, tu perd de la précision dans l'écriture du nombre 0.333 <> 0.33333333333 par exemple et en plus tu prend une place folle: chaque caractère est codé sur un octet donc 0.3333333 = 9o alors que en mémoire un double précison en consomme 8o... d'où le format binaire...
    et ça c'est toujours en utilisant un fichier à accès séquentiel...

    et donc on en revient à la même question qu'on se pose chaque fois que l'on veut lire un fichier et quel que soit le langage: "quel est son format" dans le sens "comment a-t-il été écrit"

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Février 2009
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2009
    Messages : 15
    Par défaut
    merci pour vos réponses.
    le fichier que je veux lire dans mon programme est un fichier qu'on peut lire à l'aide du programme 'notepad' par exemple...il s'agit d'un fichier que je récupère comme résultats de compilation d'un autre programme écrit sous Fortran.
    Merci

  6. #6
    Membre émérite Avatar de genteur slayer
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2002
    Messages
    710
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2002
    Messages : 710
    Par défaut
    si c'est un résultats de compilation il existe tout un tas de programme pour "parser" ce genre de fichier. vérifier quel compilateur et sa version pour prendre le parser qui va bien.

    (cela dit, je suppose que tu voulais dire "résultats d'éxécution d'un autre programme écrit sous Fortran." plutôt que "résultats de compilation d'un autre programme écrit sous Fortran.")et le fait qu'il soit écrit en fortran, on s'en fout un petit peu: c'est du code exécutable...ce qui est important en revanche: quel compilateur a été utilisé et surtout quel forme a le fichier qu'il nous sort: tu a dit l'ouvrir avec l'éditeur de texte favori de M***** (je te suggère d'ailleur de te mettre à notepad++ (cela te changera bien la vie)) donc c'est un fichier texte (dit aussi fichier ASCII) du coup en fortran pour ouvrir un fichier texte (formaté):
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    open(unit=toto,file="hihih",status="unknown")
    remplacer toto par un numéro d'unité (pas 5,6 et 0) remplace "hihihi" par le nom de ton fichier (entre cote ou double cote)
    pour lire ton fichier:
    en remplaçant les .... par les variables à lire
    enfin pour fermer le fichier. dans les systèmes intelligent, le fichier et fermé automatiquement à la fin d'exécution du prog, sous Windows je conseil fortement, de ne pas oublié le close

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/05/2014, 23h01
  2. erreur lors de la lecture d'un fichier .Dat
    Par Imène_23 dans le forum MATLAB
    Réponses: 2
    Dernier message: 15/12/2011, 21h11
  3. [HeavyWeather Pro] Lecture d'un fichier DAT
    Par Mika56 dans le forum Autres langages
    Réponses: 10
    Dernier message: 28/06/2010, 16h40
  4. Lecture d'un fichier .dat
    Par zoe_la_z dans le forum Débuter
    Réponses: 6
    Dernier message: 22/10/2007, 08h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo