Forum Programmation.perl Argggggggg dans un fichier avec des 0x00

Posté par  .
Étiquettes : aucune
0
20
juil.
2004
Salut !!!!

Je cherche desesperement à écrire avec perl un fichier binaire avec plein d'informations....

J'ai déjà le code qui écrit le fichier avec la bonne syntaxe au format ascii et j aimerai le transcrire au format binaire (à savoir tout mettre en hexa et remplacer les espaces par des 0x00)...

Exemple :
1 2 (format ascii)
3
-------->
000000010000000000000000000002
00000003 (format binaire)

Quelqu un sait comment réaliser simplement cela ???

Merci !!!!
  • # binmode()

    Posté par  . Évalué à 2.

    est ton ami
    • [^] # Re: binmode()

      Posté par  . Évalué à 1.

      ouaip je l ai vu mais je ne sais pas comment il marche !!!!


      #!/usr/bin/perl -w

      open(FILE,">trace");
      binmode(FILE);
      print FILE "test";
      print FILE 0x00;
      print FILE "essai";
      close(FILE);

      Par exemple ce code ne me donne pas un fichier binaire !

      Helppppppppp
  • # perldoc

    Posté par  (site web personnel) . Évalué à 2.

    -f unpack
    • [^] # Re: perldoc

      Posté par  . Évalué à 1.

      hein ????

      je ne comprends rien à vos réponses.........
      snif....
      • [^] # Re: perldoc

        Posté par  . Évalué à 3.

        En fait, faut que tu regardes les fonctions pack/unpack pour transformer ta chaîne en ce que tu veux.

        La fonction binmode est utile si ton fichier est un binaire (image, exe ...). Pour du texte (ascii), ça ne change pas : l'affichage traduit les codes ascii en texte lisible.

        Petite remarque : l'espace en hexa c'est 0x20 dans la table ascii.

        Exemple :

        perl -e 'open FILE,">trace";print FILE unpack("H*","test essai");close FILE';
        cat trace
        74657374206573736169
      • [^] # Re: perldoc

        Posté par  . Évalué à 2.

        Installe la doc de Perl ($ urpmi perl-doc par exemple), et tu auras une commande perldoc qui te permettra de consulter la documentation de la fonction unpack qui est ce dont tu rêves.

        C'est plus clair ?
        • [^] # Re: perldoc

          Posté par  . Évalué à 1.

          Oui merci beaucoup, désolé de ces questions sans doute triviale....

          J'ai enfin réalisé grâce à vous que la commande :
          pack ("a5 a6", @mon_tableau_a_mettre_en_binaire)
          était mon amie !!!!!


          Merci encore à tous de votre aide

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.