Lire nombre hxd

hacker591 Messages postés 34 Date d'inscription mardi 10 juin 2014 Statut Membre Dernière intervention 26 janvier 2022 - 26 juil. 2015 à 14:04
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 28 juil. 2015 à 14:55
Bonjour,
Voici en image :


mon code :
Private Sub ReadFile(FilePath As String)
        Dim reader As New Reader(FilePath, Endian.Big, 0)
        reader.Position = &H85F4
        Do
            defis = reader.ReadInt32
            If defis = "7FFFFFFF7FFFFFFF7FFFFFFF7FFFFFFF" Then Exit Do 'arret a la fin hxd
            reader.Position += 8

        Loop
    End Sub


Mon probléme comment afficher le nombre hxd sur label1.text?
exemple : 0006e00f => 1
0004f429 => 2
0004e30c => 3 ...etc

Pouvez-vous m'aider je sais pas comment faire? merci de votre compréhension

9 réponses

NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
26 juil. 2015 à 14:15
Hxd affiche en hexadécimal le contenu binaire du fichier, il faut donc lire le fichier en binaire (et pas en texte).

defis = reader.ReadInt32
If defis = "7FFFFFFF7FFFFFFF7FFFFFFF7FFFFFFF" Then

Ne peut pas fonctionner.
Actives Option Strict et Option Explicit.
Ensuite, un Int32 est sur 32 bits seulement, hors là, tu mets 4 fois 32 bits, c'est trop long.

7FFFFFFF = 2^31-1 = Int32.Max
0
hacker591 Messages postés 34 Date d'inscription mardi 10 juin 2014 Statut Membre Dernière intervention 26 janvier 2022
26 juil. 2015 à 18:39
bonjour NHenry,
vous avez pas compris ce que je vous dit. je veux afficher le nombre hxd sur mon fichier comme en image dans le label1.text .
exemple : 0006e00f => 1
0004f429 => 2
0004e30c => 3 ...etc

avez-vous une solution a mon probléme?
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 27/07/2015 à 08:36
Bonjour,
vous avez pas compris ce que je vous dit. je veux afficher le nombre hxd sur mon fichier comme en image dans le label1.text

Analyse donc cette phrase. Elle explique à elle seule l'incompréhension.
Pour t'y aider, j'ai mis un mot en gras (tu ne vois pas pourquoi ?)
compare ensuite avec cet autre extrait de ta rédaction :
exemple : 0006e00f => 1
0004f429 => 2
0004e30c => 3 ...etc


Puis reprends-la tranquillement et clairement.

EDIT : Quant à la remarque que t'a faite NHenry, elle est carrément fondamentale et je déplore que le sens t'en échappe. Un numéric ne saurait être une chaîne de caractères.

________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
0
hacker591 Messages postés 34 Date d'inscription mardi 10 juin 2014 Statut Membre Dernière intervention 26 janvier 2022
27 juil. 2015 à 20:33
Bonsoir,

je voudrais savoir comment faire pour calculer total de hex dans mon fichier .
mon code modifier
Private Sub ReadFile(FilePath As String)
        Dim reader As New Reader(FilePath, Endian.Little, 0)
        reader.Position = &H85F5
        Dim lr As String = reader.ReadHex(3).Length - 5
        reader.Position += 10
        Label1.Text = lr
        reader.Close()
    End Sub


comment lire le reste hex comme en image ?
Merci de votre compréhension.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 27/07/2015 à 20:55
Merci de votre compréhension.

Désolé, mais pour qu'il y ait "compréhension", il faut qu'il y ait de la clarté.
"Total de Hex" ? ===>> traduis !
Pour moi (et pour chacun ici...) , un total, c'est un total. Par exemple le total d'un "hex" valant 221 et d'un "hex" valant 12, c'est 233.
On va y arriver quand, à l'expression PRECISE de ce que tu veux faire ?
Au passage : lis-donc ma signature !!

________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
0
hacker591 Messages postés 34 Date d'inscription mardi 10 juin 2014 Statut Membre Dernière intervention 26 janvier 2022
27 juil. 2015 à 21:13
Bonsoir,


je voudrais calculer le nombre totale de hex dans mon fichier(Voir image). maintenant es ce que vous avez compris?
Merci de votre compréhension.
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
27 juil. 2015 à 22:02
Enfin !!!!
(il est temps) ...
et alors ?
Rien ne t'empêche de faire ce compteur (c'est du B.A.BA) ...
Genre toto = toto + 1 à chaque fois que tu extrais un de ces nombres.
Ensuite :
- soit du affiches immédiatement dans un label la valeur de toto
- soit tu ne l'affiches qu'à la fin
Il vaudra à ce propos mieux ne l'afficher qu'à la fin, car les choses iront tellement vite que l'affichage au fur et à mesure ne te laisserait même pas le temps de le lire.
0
hacker591 Messages postés 34 Date d'inscription mardi 10 juin 2014 Statut Membre Dernière intervention 26 janvier 2022
28 juil. 2015 à 13:54
Bonjour,

j'ai essayer ce que vous m'avais dit mais ça fonctionne pas.
Voici mon code :
Dim input As New FileStream(FilePath, FileMode.Open, FileAccess.Read, FileShare.Read)
        Dim reader As New BinaryReader(input)
        reader.BaseStream.Position = &H85F5
        Do
            Dim code As String = BitConverter.ToString(reader.ReadBytes(3)).Replace("-", "")
            Dim i As Integer
            For i = 0 To code.Length - 5
                If code = "7FFFFFFF7FFFFFFF7FFFFFFF7FFFFFFF" Then Exit Do
                reader.BaseStream.Position += 10
                i = i + 1
            Next i
            Label1.Text = i
        Loop
        reader.Close()
        input.Close()


Pourquoi ça fonctionne pas? comment faire pour afficher nombre totale de hex dans mon fichier?
Merci de votre compréhension
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 28/07/2015 à 15:25
Et cela veut selon toi dire quoi ?
Probablement que tu ne rentres même pas dans ta boucle !

EDIT :
Et "ça ne marche pas" ne veut absolument rien dire (dit mille et une fois)
- si tu as une erreur : sur quelle ligne et avec quel message d'etteur
- si autre : précise.

et dire qu'existe une autre discussion, ouverte par toi et marquée comme résolue il y a bientôt un an déjà. Le sujet était quasiment le même, hormis le fait que tu remplissais une listview.
Ce qui veut dire que tu les extrayais, ces héxadécimaux, non ?
Quel est donc la différence, sinon incrémenter ton compteur à chaque héxadécimal trouvé.
On tourne en rond avec toi.
Je t'abandonne. Un autre aura peut-être plus de patience...


________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
0
Rejoignez-nous