p
u
b
l
i
c
i
t
é
publicité
  1. #1
    Invité régulier
    Inscrit en
    octobre 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : octobre 2007
    Messages : 33
    Points : 7
    Points
    7

    Par défaut Zone en binaire dans un fichier

    Bonjour,

    je tente ma chance ici, peut-être allez-vous me dépanner !

    J'ai un fichier à produire avec une zone binaire*, de 6 de long (6 x 8 bits) :

    - je dois alimenter certains bits bien précis (les mettre à 1 donc), mais je ne sais pas comment faire en RPG ...

    - je dois envoyer :
    0100 0000 dans le 1er octet
    (ce qui me semble correspondre à 40 hexa, donc un blanc, si c'est cela, tout va bien je peux faire !)

    mais là où ça se corse c'est que je dois envoyer :

    0001 0000 dans le 2ème octet
    1000 0000 dans le 3ème octet

    Si je définis une zone de type B dans mon fichier, comment l'alimenter ?

    Merci beaucoup d'avance !


    * Inutile de me conseiller de mettre un autre type dans la zone, je n'ai pas le choix, j'ai un gros groupe en face de moi, c'est à eux que j'envoie le fichier, ils ne vont pas changer cette zone juste pour moi !

  2. #2
    Membre Expert
    Homme Profil pro
    Inscrit en
    septembre 2008
    Messages
    810
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : septembre 2008
    Messages : 810
    Points : 1 198
    Points
    1 198

    Par défaut

    Le mieux est de définir une data structure avec 6 zones alpha ou binaires.
    Ensuite, tu utilises un simple eval :
    eval octet2=x'00010000'; (zone alpha) ou
    eval octet2=16; (zone binaire)
    Il y a aussi les instructions testb, biton et bitoff (pour des zones alpha)

  3. #3
    Membre éprouvé
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    octobre 2006
    Messages
    344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Responsable de service informatique
    Secteur : Distribution

    Informations forums :
    Inscription : octobre 2006
    Messages : 344
    Points : 424
    Points
    424

    Par défaut

    Bonjour,

    Elle est bizarre ta zone.
    Mais la solution la plus simple à mon avis, est de la découper en 6 zones de 1 caractère avec lesquelles tu pourras jouer comme tu le désires, grâce aux commandes BITOFF et BITON. Purée çà faisait longtemps que je ne les avaient pas utilisées celles là !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    C                   BitOff    '01234567'    MaZone
    C                   BitOn     '3'           MaZone
    Après çà ta zone sera codée '00010000'. On a mis tous les bits à '0' par la 1ère commande, puis le bit numéroté 3 à '1' dans a 2ème commande.

    Edit : grillé.

  4. #4
    Invité régulier
    Inscrit en
    octobre 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : octobre 2007
    Messages : 33
    Points : 7
    Points
    7

    Par défaut

    Bonjour et merci !

    Je sais qu'elle est bizarre, et ce n'est pas "ma" zone, c'est un fichier que je dois produire pour envoyer à un organisme externe, et c'est eux de l'autre côté qui me demandent çà !
    C'est eux qui sont "bizarres", je trouve aussi !

    Je vais donc creuser vos solutions, même si au premier abord, c'est du chinois pour moi ... je vous tiens au courant !

    Merci encore !

  5. #5
    Invité régulier
    Inscrit en
    octobre 2007
    Messages
    33
    Détails du profil
    Informations forums :
    Inscription : octobre 2007
    Messages : 33
    Points : 7
    Points
    7

    Par défaut

    Re-bonjour,


    ça me semble super !

    Je vous remercie infiniment, j'aurai l'air moins bête, ça m'évite de dire que je ne sais pas gérer !

    Merci merci merci !

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

Discussions similaires

  1. Ecrire du code binaire dans un fichier
    Par sorry60 dans le forum Général Python
    Réponses: 10
    Dernier message: 02/04/2009, 20h50
  2. Réponses: 6
    Dernier message: 26/05/2008, 20h08
  3. Réponses: 2
    Dernier message: 20/11/2006, 18h37
  4. Lecture d'un nombre binaire dans un fichier ASCII
    Par semenzato dans le forum MFC
    Réponses: 1
    Dernier message: 13/04/2006, 22h41
  5. Réponses: 11
    Dernier message: 13/10/2004, 00h58

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