Un fichier dans un tableau
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Un fichier dans un tableau



  1. #1
    invite437271c3

    Question Un fichier dans un tableau


    ------

    Bonjour,

    Je suis en train d'essayer de programmer en C une fonction qui permettrai de placer un fichier dans un tableau dynamique a deux dimensions.
    Mon probleme est le suivant, je ne peux pas utiliser lseek et ne peut ouvrir qu'une seule fois le fichier.
    La syntaxe est la suivante:
    4
    ..o.
    ...o
    o...
    .o..
    La premiere ligne donne le nombre de ligne du "tableau" et je veux recuperer les points et les 'o'.
    Je n'arrive pas a malloc mon tableau convenablement car je n'ai pas de limite sur le longeur des lignes....
    A oui je ne peux pas utiliser un read avec un buffer de taille 1....
    S'il vous plait aidez moi...
    Merci d'avance

    -----

  2. #2
    Philou67

    Re : Un fichier dans un tableau

    C'est un exercice qui t'impose ces contraintes de développement ?

    Pour commencer, je lirais la première ligne à l'aide d'un fscanf afin d'obtenir le nombre de ligne.
    Ensuite, afin de connaitre la taille des lignes suivantes, j'opterais pour un algorithme utilisant fgets (en définissant la taille de chaine maximum à 10 pour commencer). Tu boucles sur les fgets jusqu'à rencontrer un \n et tu accumules le contenu de la ligne dans une variable reallouée dynamiquement à chaque boucle).
    Une fois la première lue, tu peux calculer sa taille, allouer le tableau, remplir la première ligne et continuer en utilisant fgets (avec la bonne taille cette fois-ci, et en pointant sur la ligne courante du tableau alloué).
    :'( Plus j'apprends, et plus je mesure mon ignorance

  3. #3
    invite437271c3

    Re : Un fichier dans un tableau

    Mouhaha ca serait trop simple avec ces fonctions... Non je veux dire que je ne peux pas utiliser des fonctions sorties de lib systemes, a part malloc...
    Oui ce sont des contraintes d'exercices ce n'est qu'une partie de l'exo et j'ai besoin de ca pour reellement commencer.
    En fait je voudrais utiliser le read pour avancer dans mon fichier, mais le probleme etant que si je fais un read de deux et que je tombe sur un '\n' en premiere case de mon buffer je vais plus pouvoir recuperer mon deuxieme caractere juste derriere...

  4. #4
    invite765732342432
    Invité

    Re : Un fichier dans un tableau

    Citation Envoyé par lutemorgan Voir le message
    En fait je voudrais utiliser le read pour avancer dans mon fichier, mais le probleme etant que si je fais un read de deux et que je tombe sur un '\n' en premiere case de mon buffer je vais plus pouvoir recuperer mon deuxieme caractere juste derriere...
    Je ne vois pas pourquoi...

    Certes, tu ne peux pas charger directement ce que tu lis dans un tableau, mais avec des traitements minimes, c'est assez facile.
    Philou67 a déjà décrit l'essentiel du fonctionnement, après il suffit de remplacer l'usage des fgets&co par des fread de base, ce qui ne pose pas de problème majeur

  5. A voir en vidéo sur Futura
  6. #5
    Philou67

    Re : Un fichier dans un tableau

    Cela dit, je trouve ces contraintes d'exercice un peu débile (je ne juge pas le prof qui l'a donné) :
    - cela n'apporte pas grand chose à l'exercice d'algorithmique de supprimer l'usage de stdio (et de se limiter à io.h),
    - et c'est idiot de limiter l'usage de librairies standards pour un exercice de programmation.

    A moins qu'il s'agisse d'un exercice pour un micro préhistorique qui ne possède pas stdio
    :'( Plus j'apprends, et plus je mesure mon ignorance

  7. #6
    invite765732342432
    Invité

    Re : Un fichier dans un tableau

    Ca dépend du cadre d'enseignement... à 17 ans, effectivement, ça parait surprenant. Mais à EPITA, le premier mois est consacré à la réécriture de toutes les fonctions standards principales:
    str*, fread, printf, et même malloc !

    Ca permet de bien mieux comprendre le fonctionnement du langage et de ces fonctions.

  8. #7
    Philou67

    Re : Un fichier dans un tableau

    Je suis d'accord, mais là, il s'agit vraisemblablement d'un exercice d'algorithmique... et pas d'une fonction standard
    :'( Plus j'apprends, et plus je mesure mon ignorance

Discussions similaires

  1. Matlab Lecture de n fichier .txt et ecriture dans un fichier .xls
    Par invite24513ab6 dans le forum Logiciel - Software - Open Source
    Réponses: 4
    Dernier message: 26/07/2010, 10h12
  2. Conversion un fichier avec EOF EOL vers un tableau
    Par invitece60ff16 dans le forum Logiciel - Software - Open Source
    Réponses: 17
    Dernier message: 22/03/2009, 11h30
  3. enregistrement fichier bmp dans tableau, puis restitution
    Par invite5d5dfac0 dans le forum Logiciel - Software - Open Source
    Réponses: 21
    Dernier message: 02/11/2008, 22h17
  4. Fichier .doc dans fichier .pdf
    Par invite692c40a0 dans le forum Logiciel - Software - Open Source
    Réponses: 5
    Dernier message: 25/09/2008, 22h09
  5. Comment exporter un tableau (.xls ou .ods) en fichier .dat? (pour Gauss)
    Par inviteedbd3116 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 09/08/2007, 10h55
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...