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

 C Discussion :

impossible d'ecrire dans un fichier texte de taille >2go


Sujet :

C

  1. #1
    Débutant Avatar de étoile de mer
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    978
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 978
    Points : 117
    Points
    117
    Par défaut impossible d'ecrire dans un fichier texte de taille >2go
    Bonjour à tous,
    j'ai developpé un programme en C qui genere un fichier texte de taille gigantesque (taille >>2go)
    le probleme c'est programme ne peut pas ecrire plus dans le fichier lorsqu'il atteind une taille =2go.
    Il m'affiche aucun message.
    est ce que vous avez des idées sur ce ptit souci?
    Merci
    Le jour est le père du labeur et la nuit est la mère des pensées.

  2. #2
    Membre habitué

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2008
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2008
    Messages : 110
    Points : 167
    Points
    167
    Par défaut
    sur quel os? systeme fichier?
    Ca peut etre un probleme de stack, mais y'aurait un message d'erreur.
    as tu regarder dans un débuggeur si tu avais un capacity overflow?

  3. #3
    Débutant Avatar de étoile de mer
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    978
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 978
    Points : 117
    Points
    117
    Par défaut
    Merc geektoo pour ta reponse:
    Là je travaille sous Ubunto 9.04, et j'ai aucun message : comme si rien s'est passé
    Le jour est le père du labeur et la nuit est la mère des pensées.

  4. #4
    Membre expérimenté
    Profil pro
    Développeur en systèmes embarqués retraité
    Inscrit en
    Mars 2006
    Messages
    946
    Détails du profil
    Informations personnelles :
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2006
    Messages : 946
    Points : 1 351
    Points
    1 351
    Par défaut
    Salut

    Sous Windows, le formatage en ntfs permet d'écrire un fichier de plus de 2 gigas. Sur fat16, c'est impossible. Regarde comment est formaté ton disque et trouve les specs du format.

    A+

    Pfeuh

  5. #5
    Débutant Avatar de étoile de mer
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    978
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 978
    Points : 117
    Points
    117
    Par défaut
    Merci Pfeu, Mais là je suis sous Ubuntu
    Je vois pas comment faire
    Le jour est le père du labeur et la nuit est la mère des pensées.

  6. #6
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Dans un environnement POSIX (le cas d'ubuntu), il faut compiler avec les bons flags:



    ce qui donne au final
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc -D_XOPEN_SOURCE=600 `getconf LFS_CFLAGS` -o program main.c `getconf LFS_LDFLAGS`
    Cordialement.
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  7. #7
    Débutant Avatar de étoile de mer
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    978
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 978
    Points : 117
    Points
    117
    Par défaut
    Merci beaucoup Nicolas,
    mais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc -D_XOPEN_SOURCE=600 `getconf LFS_CFLAGS` -o program main.c `getconf LFS_LDFLAGS`
    où est ce que je le mets ?
    Le jour est le père du labeur et la nuit est la mère des pensées.

  8. #8
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Comment compiles tu ton programme?
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  9. #9
    Débutant Avatar de étoile de mer
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    978
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 978
    Points : 117
    Points
    117
    Par défaut
    Citation Envoyé par nicolas.sitbon Voir le message
    Comment compiles tu ton programme?
    J'utilise code blocks et j'ai rien parametré.
    Le jour est le père du labeur et la nuit est la mère des pensées.

  10. #10
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par cyrine Voir le message
    J'utilise code blocks et j'ai rien parametré.
    Il va falloir mettre les mains dans le cambouis. Dans les propriétés de ton projet, il faut que tu renseignes les flags de compilations et d'édition de lien comme ceci:
    flags de compilation:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    -D_XOPEN_SOURCE=600 `getconf LFS_CFLAGS`
    flags d'édition de liens:
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  11. #11
    Débutant Avatar de étoile de mer
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    978
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 978
    Points : 117
    Points
    117
    Par défaut
    Merci,
    le flag d'edition des lien c'est la meme chose que linkers settings?
    Le jour est le père du labeur et la nuit est la mère des pensées.

  12. #12
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par cyrine Voir le message
    Merci,
    le flag d'edition des lien c'est la meme chose que linkers settings?
    C'est exactement ça!
    "The quieter you become, the more you are able to hear"
    "Plus vous êtes silencieux, plus vous êtes capable d'entendre"

  13. #13
    Débutant Avatar de étoile de mer
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    978
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 978
    Points : 117
    Points
    117
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    -D_XOPEN_SOURCE=600 `getconf LFS_CFLAGS`
    ca na pas marché
    je sais pas si'il ya un souci au niveau du quote?
    Le jour est le père du labeur et la nuit est la mère des pensées.

  14. #14
    Rédacteur

    Avatar de ok.Idriss
    Homme Profil pro
    IS Consultant
    Inscrit en
    Février 2009
    Messages
    5 220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : IS Consultant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2009
    Messages : 5 220
    Points : 19 452
    Points
    19 452
    Par défaut
    Salut.

    Essayes peut être en ligne de commande pour voir si le problème vien de C::B, on ne sait jamais.
    nicolas.sitbon t'as donné la commande à rentrer dans un terminal (tu n'a plus qu'à l'adapter à ton projet).

  15. #15
    Expert éminent
    Avatar de Melem
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2006
    Messages
    3 656
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 3 656
    Points : 8 389
    Points
    8 389
    Par défaut
    Citation Envoyé par étoile de mer Voir le message
    Bonjour à tous,
    j'ai developpé un programme en C qui genere un fichier texte de taille gigantesque (taille >>2go)
    le probleme c'est programme ne peut pas ecrire plus dans le fichier lorsqu'il atteind une taille =2go.
    Il m'affiche aucun message.
    est ce que vous avez des idées sur ce ptit souci?
    Merci
    Poste un exemple de code (le plus simple possible) avec lequel tu as un problème. Si tu veux manipuler des fichiers de tailles supérieures à 2 Go sous environnement POSIX, utilise fseeko/ftello à la place de fseek/ftell. N'oublie pas le :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define _FILE_OFFSET_BITS 64
    Ou un truc équivalent ...

  16. #16
    Débutant Avatar de étoile de mer
    Profil pro
    Étudiant
    Inscrit en
    Avril 2007
    Messages
    978
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2007
    Messages : 978
    Points : 117
    Points
    117
    Par défaut il n'ecrit plus dans le fichier
    Bonjour ,
    J'avais le probleme : (on peut pas ecrire dans des fichiers de taille>2go), et le probléme est resolu.

    Là je suis sur la machine de mon bosse et il a ca dans son fichier makefile :
    LCMSEQ: lcm_seq.c trsact.c itemset.c problem.c base.c queue.c aheap.c stdlib2.c vec.c

    gcc -O3 -Os -s -o lcm_seq lcm_seq.c
    J'ai voulu mettre ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc -D_XOPEN_SOURCE=600 `getconf LFS_CFLAGS`-O3 -Os -s -o lcm_seq lcm_seq.c `getconf LFS_LDFLAGS`
    ppour resoudre le souci , mais là il n'ecrit plus dans le fichier : fichier vide

    Une idée svp?

    Merci
    Le jour est le père du labeur et la nuit est la mère des pensées.

  17. #17
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 064
    Points
    219 064
    Billets dans le blog
    120
    Par défaut
    En échange, il a du afficher une erreur de compilation ... j'imagine.

    Sinon il manque un espace ici ->
    `getconf LFS_CFLAGS`-O3
    Je pense que dans ce cas cela joue ...
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

Discussions similaires

  1. [VB.net]ecrire dans un fichier text
    Par grand_prophete dans le forum Windows Forms
    Réponses: 12
    Dernier message: 04/05/2006, 16h37
  2. Réponses: 6
    Dernier message: 17/12/2005, 19h27
  3. [VB.NET] Ecrire dans un fichier texte...
    Par robert.michel9 dans le forum VB.NET
    Réponses: 5
    Dernier message: 04/12/2005, 14h35
  4. impossible d'ecrire dans un fichier...
    Par cyberm41 dans le forum Access
    Réponses: 4
    Dernier message: 25/10/2005, 09h18
  5. Ecrire dans un fichier text en MFC
    Par soufienne dans le forum MFC
    Réponses: 6
    Dernier message: 05/10/2005, 16h54

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