cs_XRaph
Messages postés15Date d'inscriptionmardi 24 février 2009StatutMembreDernière intervention18 juillet 2009 26 févr. 2009 à 19:03
Mais quand meme il y a un probleme dans la conversion en hexa :
TotalChaine = TotalChaine & Right("0" & hex(Asc(Mid(Texte, a, 1))), 2)
ca ne 'marche pas'
1:: ca sort un texte en hex beaucoup plus long que cque ca doit etre
2:: quand je le reconvertit ca me mes 1::des chose pas bonnes et des caractere comme ca :: ||||| en gras (des barres si tu vois(0_0) pas bien LLOOLL)et 2:: le texte 'normal' est beaucoup plus court (Meme pas une ligne)
Alors voila probleme -> -_-' <-
Merci d'avance
cs_XRaph
Messages postés15Date d'inscriptionmardi 24 février 2009StatutMembreDernière intervention18 juillet 2009 26 févr. 2009 à 14:44
A merci beaucoup mdry je mes à jour des que j'ai le tmp.
Il y a tjr le probleme de conversion hexa->ascii de mon fichier 'SUPPRIME.txt' .
Je l'ouvre, je le convertit en hexa et je le reconvertit en ascii et il me met 1 caractere bidon :: Þ (en fait yen a jor 3 des carac la dedans)
Pour la lecture du fichier j'ai pas l'habitude comme avant j'était sous qb (ya aussi le mode binary je croi(?) mais je l'ai jamais utilisé)...
mdry
Messages postés33Date d'inscriptiondimanche 25 juillet 2004StatutMembreDernière intervention 5 mai 2013 26 févr. 2009 à 06:49
Ha oui
Pour les séparations
Dim A As Integer 'les declarations sont pas propres je fais ca un peu partout ...
Dim TotalChaine As String '...quand j'ai besoin d'une vriable
TotalChaine = "" 'au cas ou
For A = 1 To Len(Texte) 'on boucle jusqu'a la fin de la chaine(texte quoi)
TotalChaine = TotalChaine & Right("0" & Hex(Asc(Mid(Texte, a, 1))), 2)
' 11 1111
'0123 4567 8901 2345
Select Case (A - 1) Mod 16 'Mod : il faut tj partir à Zéro
Case 15 'au 16ième Hex, on change de ligne
TotalChaine = TotalChaine & vbCrLf
Case 3, 7, 11 'on regroupe par 4 Hex, 2 espaces entre groupe
TotalChaine = TotalChaine & " "
Case Else '1 espace entre Hex
TotalChaine = TotalChaine & " "
End Select
Next A '...rapport à l'originale (beaucoup plus long, mai à la meme équivlence en ASCII)
TxtHexa.Text = TotalChaine 'on ecrit le result dans la textbox
mdry
Messages postés33Date d'inscriptiondimanche 25 juillet 2004StatutMembreDernière intervention 5 mai 2013 26 févr. 2009 à 06:38
Pour lire un fichier texte
Open Fichier For Binary As #1
Texte = Space(LOF(1))
Get #1, , Texte
Close
Il lit le fichier au complet avec les 'retour de ligne'
Pour un Hex
Hex renvoie une chaîne de caractères
Hex("A") = 41 , 2 car.
Hex(vbTab) = 9, 1 car.
Test ceci:
Tmp = Right("0" & Hex(vbTab), 2)
il renvoie 09
bon VB
cs_XRaph
Messages postés15Date d'inscriptionmardi 24 février 2009StatutMembreDernière intervention18 juillet 2009 25 févr. 2009 à 16:18
J'ai oublié de dire que SUPPRIME.txt c'est le ptit prog. pour les espaces... (c'est du qbasic)
Les commentaires ne sont pas interdits !!
26 févr. 2009 à 19:03
TotalChaine = TotalChaine & Right("0" & hex(Asc(Mid(Texte, a, 1))), 2)
ca ne 'marche pas'
1:: ca sort un texte en hex beaucoup plus long que cque ca doit etre
2:: quand je le reconvertit ca me mes 1::des chose pas bonnes et des caractere comme ca :: ||||| en gras (des barres si tu vois(0_0) pas bien LLOOLL)et 2:: le texte 'normal' est beaucoup plus court (Meme pas une ligne)
Alors voila probleme -> -_-' <-
Merci d'avance
26 févr. 2009 à 14:44
Il y a tjr le probleme de conversion hexa->ascii de mon fichier 'SUPPRIME.txt' .
Je l'ouvre, je le convertit en hexa et je le reconvertit en ascii et il me met 1 caractere bidon :: Þ (en fait yen a jor 3 des carac la dedans)
Pour la lecture du fichier j'ai pas l'habitude comme avant j'était sous qb (ya aussi le mode binary je croi(?) mais je l'ai jamais utilisé)...
26 févr. 2009 à 06:49
Pour les séparations
Dim A As Integer 'les declarations sont pas propres je fais ca un peu partout ...
Dim TotalChaine As String '...quand j'ai besoin d'une vriable
TotalChaine = "" 'au cas ou
For A = 1 To Len(Texte) 'on boucle jusqu'a la fin de la chaine(texte quoi)
TotalChaine = TotalChaine & Right("0" & Hex(Asc(Mid(Texte, a, 1))), 2)
' 11 1111
'0123 4567 8901 2345
Select Case (A - 1) Mod 16 'Mod : il faut tj partir à Zéro
Case 15 'au 16ième Hex, on change de ligne
TotalChaine = TotalChaine & vbCrLf
Case 3, 7, 11 'on regroupe par 4 Hex, 2 espaces entre groupe
TotalChaine = TotalChaine & " "
Case Else '1 espace entre Hex
TotalChaine = TotalChaine & " "
End Select
Next A '...rapport à l'originale (beaucoup plus long, mai à la meme équivlence en ASCII)
TxtHexa.Text = TotalChaine 'on ecrit le result dans la textbox
26 févr. 2009 à 06:38
Open Fichier For Binary As #1
Texte = Space(LOF(1))
Get #1, , Texte
Close
Il lit le fichier au complet avec les 'retour de ligne'
Pour un Hex
Hex renvoie une chaîne de caractères
Hex("A") = 41 , 2 car.
Hex(vbTab) = 9, 1 car.
Test ceci:
Tmp = Right("0" & Hex(vbTab), 2)
il renvoie 09
bon VB
25 févr. 2009 à 16:18
Les commentaires ne sont pas interdits !!