IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Comment enregistrer en hexadecimale avec binarywriter


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Avril 2013
    Messages
    267
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2013
    Messages : 267
    Par défaut Comment enregistrer en hexadecimale avec binarywriter
    Bonjour,

    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    Try
                Dim stream As New FileStream(Me.FilePath, FileMode.Open, FileAccess.ReadWrite)
                Dim Writer As New BinaryWriter(stream)
                If Me.CheckBox1.Checked = True Then
                    Writer.BaseStream.Position = &H7074
                    Dim hex As String = "0001FFFF000756CE0001FFFF000757090001FFFF000758900001FFFF000756CD0001FFFF0007564E0001FFFF000758910001FFFF000757100001FFFF000757180001FFFF000756F40001FFFF0007570B0001FFFF000757190001FFFF000757110001FFFF000756820001FFFF000756760001FFFF0007565C0001FFFF000756CF0001FFFF000756730001FFFF000756F50001FFFF000757030001FFFF000757210001FFFF0007571A0001FFFF0007589C0001FFFF000756740001FFFF000756E60001FFFF000757040001FFFF000757050001FFFF000756F30001FFFF000756E70001FFFF000756850001FFFF000757130001FFFF000757060001FFFF0007567A0001FFFF000756830001FFFF000756EC0001FFFF000757150001FFFF000756F70001FFFF000757070001FFFF000756F80001FFFF000756540001FFFF000756EB0001FFFF0007589E0001FFFF000756840001FFFF000757330001FFFF0007572C0001FFFF0007572E0001FFFF000757320001FFFF0007572D0001FFFF000756520001FFFF0007586D0001FFFF000757460001FFFF0007590C0001FFFF000756D80001FFFF00080AF20001FFFF0007570A0001FFFF0007570D0001FFFF0007570E0001FFFF000756590001FFFF000756890001FFFF000757240001FFFF000757390001FFFF000757290001FFFF000757250001FFFF000757280001FFFF000757270001FFFF0007572A0001FFFF000758650001FFFF000758730001FFFF000756580001FFFF000756550001FFFF000756560001FFFF000756800001FFFF000756810001FFFF0007571E0001FFFF000757230001FFFF00080AF30001FFFF000825910001FFFF00080AF50001FFFF000757120001FFFF0007570C0001FFFF000756D00001FFFF0007586B0001FFFF000758770001FFFF0007567C0001FFFF000758740001FFFF000758760001FFFF0007573B0001FFFF000758710001FFFF0007586A0001FFFF000756780001FFFF0007571C0001FFFF0007565B0001FFFF000756ED0001FFFF0007586C0001FFFF000758FF0001FFFF0007587A0001FFFF000757080001FFFF000758780001FFFF0007573E0001FFFF000758690001FFFF000757020001FFFF000758F80001FFFF000758720001FFFF000758BE0001FFFF000758790001FFFF000758680001FFFF0007574F0001FFFF0007564F0001FFFF000757260001FFFF000758670001FFFF0007573D0001FFFF0007565D0001FFFF000756F60001FFFF00080AF60001FFFF00075EEC0001FFFF000757440001FFFF000758660001FFFF00075EE10001FFFF00080AF40001FFFF00076C3E0001FFFF"
                    Writer.Write('hex) <= non fonctionnel
                End If
                stream.Close()
                Writer.Close()
                MessageBox.Show("Fichier Enregistrer!", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information)
            Catch exception1 As Exception
                ProjectData.SetProjectError(exception1)
                Dim exception As Exception = exception1
                Interaction.MsgBox(Conversion.ErrorToString, MsgBoxStyle.ApplicationModal, Nothing)
                ProjectData.ClearProjectError()
            End Try
    Pouvez-vous me dire comment enregistrer en hexadecimale avec binaryWriter?
    merci de votre compréhension,

  2. #2
    Membre actif
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2013
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 93
    Par défaut
    Le soucis c'est que "0" est différent de 0.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    "0" //ascii le code 48
    0 // 0
    Dépend si ta façon de coder ta chaine.

    Pour la première façon :

    http://www.developpez.net/forums/d22...e-inversement/

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    writer.write(System.Text.Encoding.ASCII.GetBytes(hex))
    Ou alors si tu veux un pur tableau de byte

    http://stackoverflow.com/questions/3...and-vice-versa

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Public Shared Function StringToByteArray(hex As [String]) As Byte()
    	Dim NumberChars As Integer = hex.Length
    	Dim bytes As Byte() = New Byte(NumberChars / 2 - 1) {}
    	For i As Integer = 0 To NumberChars - 1 Step 2
    		bytes(i / 2) = Convert.ToByte(hex.Substring(i, 2), 16)
    	Next
    	Return bytes
    End Function
     
    writer.Write(StringToByteArray(hex))

  3. #3
    Membre Expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Par défaut
    Salut,

    pourquoi ne pas te servir du préfix &H -que tu utilises juste au-dessus- et un tableau de long à la place du string ?

Discussions similaires

  1. [Débutant] Comment enregistrer un fichier avec la date système dans le VB.NET
    Par hackoofr dans le forum VB.NET
    Réponses: 2
    Dernier message: 04/03/2015, 09h55
  2. Réponses: 3
    Dernier message: 26/12/2014, 08h35
  3. Réponses: 21
    Dernier message: 10/06/2010, 21h40
  4. Réponses: 5
    Dernier message: 08/05/2007, 18h58
  5. Comment Enregistrer un champ type BLOB avec Query ???
    Par baba dans le forum Bases de données
    Réponses: 3
    Dernier message: 11/01/2005, 20h33

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