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

VB 6 et antérieur Discussion :

Modification d'un fichier binaire


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 28
    Points : 20
    Points
    20
    Par défaut Modification d'un fichier binaire
    Bonjour à toutes et à tous,

    j'ai besoin d'un petit coup de pouce pour réaliser un petit prog.

    J'aurais besoin de modifier une valeur dans un fichier binaire.

    J'ai un fichier source, dans lequel je vais rechercher cette valeur (constante définie en dur) et la modifier par autre chose pour créer un nouveau fichier "avec modification" dans le même dossier.

    Voilà, merci d'avance

  2. #2
    Membre régulier
    Inscrit en
    Mai 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 62
    Points : 71
    Points
    71
    Par défaut
    Mieux aurait été que tu nous montre ce que tu as essayé de faire.

    En tout cas, utilise Line Input pour lire une ligne de ton fichier source puis Print pour écrire dans le fichier de destination. pour ouvrir chacun des fichiers utilise Open. Les fonctions de traitement de texte t'aiderons à sélectionner uniquement la valeur qui t'interesse...
    ...J'ai fait exprès de ne pas être plus précis pour que tu essaie de comprendre les fonctions précitées et que tu nous aides à t'aider.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    J'ai déjà utilisé ces fonctions qui fonctionnent très bien avec des fichiers texte mais pas vraiment avec des fichiers binaires.
    Je vais tout de même réessayer demain...
    Merci

  4. #4
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    As tu un exemple CONCRET à nous montrer ?
    Dans certains cas, un simple remplacement de chaine comme suggére Mr NGANZI peut suffire mais dans des cas bien particuliers( assez rares à priori)
    Sinon il te faut connaitre la structure de ton fichier binaire, savoir comment les données sont structurées à l'intérieur de ce fichier.
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  5. #5
    Membre régulier
    Inscrit en
    Mai 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 62
    Points : 71
    Points
    71
    Par défaut
    Citation Envoyé par Met@lnono Voir le message
    J'ai déjà utilisé ces fonctions qui fonctionnent très bien avec des fichiers texte mais pas vraiment avec des fichiers binaires.
    Je vais tout de même réessayer demain...
    Merci
    Fichier texte et fichier binaire, pour vb je pense que ya pas de difference. Ok à demain.

  6. #6
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    Une exemple concret... j'ai une classe Java compilée (donc le fichier .class) qui par exemple affiche un prénom dans une msgbox (en vb ) lorsqu'on l'execute.

    Je voudrais pouvoir éditer ce fichier, sans avoir à le recompiler, pour changer le prénom affiché.

  7. #7
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    Un LineInput dans un fichier binaire, ça fait un peu désordre je trouve personnellement
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  8. #8
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    tu peux joindre ton fichier et dire quel est le prénom à chercher par exemple ?
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  9. #9
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    ce n'est qu'un exemple mais voici le fichier.
    AfficherDeuxPrenoms.zip
    et je souhaiterais modifier le prénom "Sophie" par "Arnaud"...

  10. #10
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    Et si tu le fais manuellement juste pour essai, ton fichier class mache toujours ensuite ? Parce que je ne sais pas ce que fait le compilateur java mais modifier un fichier compilé, ça peut être risqué non ?
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  11. #11
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    Normalement si le prénom de remplacement à la même longueur que celui à modifier, il ne doit pas y avoir de problème.
    mais ceci n'est qu'un exemple, ce n'est pas un fichier Java que je dois réellement modifier, mais l'esprit reste le même.

    EDIT:
    Je viens de trouver une solution qui a l'air de fonctionner (http://www.developpez.net/forums/sho...023#post581023) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Dim Monfichier As String
    Dim Adresse As String
     
    Adresse = "d:\AfficherDeuxPrenoms.class"
     
    Monfichier = Space(FileLen(Adresse))
     
    Open Adresse For Binary As #1
    Get #1, , Monfichier
    Close #1
     
    Kill Adresse
     
    Monfichier = Replace(Monfichier, "Sophie", "Arnaud")
     
    Open Adresse For Binary As #1
    Put #1, , Monfichier
    Close #1
    Je testerais demain sur le "vrai" fichier à modifier.
    Merci encore pour les réponses

  12. #12
    Membre expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Points : 3 685
    Points
    3 685
    Par défaut
    Citation Envoyé par Met@lnono Voir le message
    mais ceci n'est qu'un exemple, ce n'est pas un fichier Java que je dois réellement modifier, mais l'esprit reste le même.
    Sympa de nous mettre sur une fausse piste, réalise stp que des gens font eventuellement des recherches avec les infos que tu donnes...
    Pour VB6 : N'oubliez pas d'aller voir la FAQ et les Tutoriels
    Vous trouvez une reponse particulierement utile ? Votez pour !

  13. #13
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    Vraiment désolé mais je ne souhaite pas vous mettre sur une fausse piste, je n'ai pas le fichier en question chez moi.
    Je pensais qu'un exemple similaire suffirait et qu'en trouvant la solution pour celui-ci je l'aurais aussi pour l'autre.

  14. #14
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Bonsoir, Met@lnono,

    Nonostant : il me semble avoir lu un conseil que t'a donné ohmonbato, à propos d'un réflexe : celui de vérifier qu'une transformation manuelle conduisait à tes buts (ce qui est loin d'être démontré dans tous les cas de figure) avant de développer une transformation dynamique.
    C'était à mon sens un conseil avisé....

  15. #15
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2004
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42

    Informations forums :
    Inscription : Août 2004
    Messages : 28
    Points : 20
    Points
    20
    Par défaut
    Citation Envoyé par ucfoutu Voir le message
    Bonsoir, Met@lnono,

    Nonostant : il me semble avoir lu un conseil que t'a donné ohmonbato, à propos d'un réflexe : celui de vérifier qu'une transformation manuelle conduisait à tes buts (ce qui est loin d'être démontré dans tous les cas de figure) avant de développer une transformation dynamique.
    C'était à mon sens un conseil avisé....
    Oui c'est un bon conseil, j'ai testé manuellement et ça fonctionne.

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

Discussions similaires

  1. [LG]ecriture dans un fichier binaire
    Par jsaviola dans le forum Langage
    Réponses: 3
    Dernier message: 26/12/2003, 17h30
  2. [Debutant] Comment lire la taille d'un fichier binaire ?
    Par Invité dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 18/12/2003, 19h20
  3. [langage] Date de modification d'un fichier
    Par Cyspak dans le forum Langage
    Réponses: 2
    Dernier message: 24/06/2003, 15h49
  4. communication fichier binaire fichier txt
    Par micdie dans le forum C
    Réponses: 3
    Dernier message: 05/12/2002, 00h19
  5. fichier binaire ou texte
    Par soussou dans le forum C++Builder
    Réponses: 4
    Dernier message: 14/06/2002, 13h39

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