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

Windows Discussion :

[Win32] Position dans un fichier


Sujet :

Windows

  1. #1
    Candidat au Club
    Inscrit en
    Décembre 2003
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 5
    Points : 2
    Points
    2
    Par défaut [Win32] Position dans un fichier
    Je voudrais savoir comment on peut faire pour savoir à quel endroit le pointeur de fichier est pendant la lecture
    (Je dois écrire un octet à l'endroit ou lepointeur est actuellement, mais je ne connaitrai cet octet que plus tard, quand le pointeur aura déja bougé)
    Je m'étonne qu'il n'y ait pas de fonction GetFilePointerEx, puisqu'il y a GetFilePointerEx

    Pas la peine de me donner des solution avec fseek ou d'autres de ce type, je travaille seulement avec les fonction Win32

    Merci

  2. #2
    Membre régulier

    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    68
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 68
    Points : 93
    Points
    93
    Par défaut
    Bonjour,

    Dans la MSDN il est ecrit

    You can also use SetFilePointerEx to query the current file pointer position. To do this, specify a move method of FILE_CURRENT and a distance of zero.
    cordialement

  3. #3
    Candidat au Club
    Inscrit en
    Décembre 2003
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    merci beaucoup

  4. #4
    Candidat au Club
    Inscrit en
    Décembre 2003
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    ca marche bien mais finalement ca ne résoud pas mon problème, puisque dès qu'on bouge le pointeur, je m'apercois que tout ce qu'il y a après est effacé. Existe t'il y moyen d'écrire n'importe ou dans un fichier (et écraser les octets qui s'y trouvent) sans pour autant détruire les suivants??

  5. #5
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 667
    Points
    10 667
    Billets dans le blog
    3
    Par défaut
    Existe t'il y moyen d'écrire n'importe ou dans un fichier (et écraser les octets qui s'y trouvent) sans pour autant détruire les suivants??
    En gros, tu demandes si on peut écrire dans un fichier sans le modifier ?

    Si tu cherches à insérer quelque chose au milieu du fichier, on peut pas.
    Faut en créer un nouveau, ou déplacer le reste à la fin.

  6. #6
    Candidat au Club
    Inscrit en
    Décembre 2003
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    C'est bizarre je fais des efforts pour être clair mais ca ne suffit pas
    Je demandais si on pouvait remplacer un octet quelconque dans un fichier
    Par exemple passer de
    11 45 AC 4C 3D
    à
    11 45 AC 00 3D
    en faisant WriteFile(hFile, &b, 1, &dwWritten, 0);

    mais de doute facon j'ai trouvé comment faire (il faut ouvrir le fichier avec le flag FILE_FLAG_RANDOM_ACCESS

  7. #7
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 751
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 751
    Points : 10 667
    Points
    10 667
    Billets dans le blog
    3
    Par défaut
    Biensûr qu'on peut modifier un octet quelconque.
    Il suffit d'en écrire un seul. C'est ce que tu fais.
    FILE_FLAG_RANDOM_ACCESS n'a rien à voir là dedans.
    Il sert juste à indiquer à Windows que ce fichier va être parcouru dans tous les sens, afin qu'il en améliore les temps d'accès.

  8. #8
    Candidat au Club
    Inscrit en
    Décembre 2003
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Tu as raison, je ne sais pas ce que j'ai foutu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Remplacer position dans un fichier
    Par menakikou dans le forum Linux
    Réponses: 12
    Dernier message: 28/03/2012, 10h18
  2. [SAX] Position dans le fichier
    Par snyouf dans le forum Format d'échange (XML, JSON...)
    Réponses: 0
    Dernier message: 11/09/2008, 15h05
  3. Position dans un fichier
    Par DarkIndra dans le forum C
    Réponses: 15
    Dernier message: 04/07/2007, 11h18
  4. aller à une position précise dans un fichier texte
    Par bassidi meryeme dans le forum Langage
    Réponses: 3
    Dernier message: 27/10/2005, 14h57
  5. Réponses: 5
    Dernier message: 20/02/2005, 01h14

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