voilà mon fichier binaire avec un editeur hexadecimal :
0A B5 08 A1 A2 B1 B2 C1 C2 D1 D2
0C B1 06 A1 A2 C1 C2 D1 D2 E1 E2 F1 F2
avec :
pour le 1er enregistrement :
0A B5 08 A1 A2 B1 B2 C1 C2 D1 D2
--- |-----------les 10 octets------------|
|
le lenght
=
10 octets
pour le 2 ème :
0C B1 06 A1 A2 C1 C2 D1 D2 E1 E2 F1 F2
--- |-----------les 12 octets---------------------|
12
octets
je voudrais :
1- supprimer la sequence d'octets qui correspond à B1 B2 dès que je la trouve dans l'enregistrement dans le fichier.
2- arranger le length de l'enregistrement puisqu'on à supprimer 2 octets de
ce dernier.
alors après le traitement :
08 B5 08 A1 A2 C1 C2 D1 D2
0C A4 B1 06 A1 A2 C1 C2 D1 D2 E1 E2 F1 F2
NB : la séquence B1 B2 peut figurée dans plusieur enregistrement dans le fichiers
Merci
# RTFM
Posté par Obsidian . Évalué à 2.
# c sux
Posté par gc (site web personnel) . Évalué à 4.
#!/usr/bin/ruby
test = '0AB508A1A2B1B2C1C2D1D20CB106A1A2C1C2D1D2E1E2F1F2'
baddy = 'B1B2'
testb = [ test ].pack("H*")
baddyb = [ baddy ].pack("H*")
outb = ''
while testb.length > 0
substring = testb[1, testb[0]]
testb = testb[1+testb[0] .. -1]
substring.gsub!(baddyb, '')
outb += [ substring.length ].pack("C")
outb += substring
end
puts outb.unpack("H*")[0].upcase
[^] # Re: c sux
Posté par Nicolas Boulay (site web personnel) . Évalué à 3.
"La première sécurité est la liberté"
[^] # Re: c sux
Posté par gc (site web personnel) . Évalué à 3.
[^] # Re: c sux
Posté par saorge . Évalué à 3.
# C rox
Posté par couriousous . Évalué à 1.
[^] # Re: C rox
Posté par demo2000 . Évalué à -1.
le fichier sortant contient toujour: B1B2
merci pour votre aide
[^] # Re: C rox
Posté par couriousous . Évalué à 1.
car tes explications sont lacunaires et donc j'utilise peu être le mauvais format.
[^] # Re: C rox
Posté par demo2000 . Évalué à -1.
le fichier sortant contient toujour: B1B2
merci pour 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.