Variable non signé

ShadowMaster Messages postés 184 Date d'inscription mercredi 27 novembre 2002 Statut Membre Dernière intervention 18 août 2005 - 4 nov. 2004 à 12:56
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 - 4 nov. 2004 à 21:13
Y aurait il un moyen d'ecrire et lire dans un fichier en acces binaire une variable non signé avec vb6? (Integer non signé (16bits))
merci

2 réponses

Gobillot Messages postés 3140 Date d'inscription vendredi 14 mai 2004 Statut Membre Dernière intervention 11 mars 2019 34
4 nov. 2004 à 13:56
pour Ecrire, on l'écrit tel quel sur 2 octets, elle sera codée de la même façon, signée ou pas signée.
exemple:
si varInt est égal à -1(signé) ou 65535(non signé), on aura dans le fichier binaire --> FFFF

Dim varInt As Integer

varInt = -1
Open monFichier For Binary As #1
Put #1, , varInt
Close #1

pour Lire, on lit en Integer (héhé!), le seul problème c'est d'interpréter le contenu

Dim varLong As Long

Open monFichier For Binary As #1
Get #1, , varInt
Close #1
If varInt < 0 Then varLong varInt + 65536 Else varLong varInt
MsgBox varLong

Daniel
0
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
4 nov. 2004 à 21:13
salut

sinon tu lis comme indiqué par Gobillot :
Dim varInt As Integer
Dim varLong As Long

Open monFichier For Binary As #1
Get #1, , varInt
Close #1

'puis une autre méthode de mise en forme non signée
varLong= 0 'au cas où elle serait déjà utilisée ailleurs
copymemory varLong,varInt,2&

et dans la zone déclaration tu mets :
Private Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" (ByRef Destination As Any, ByRef Source As Any, ByVal Length As Long)

ShareVB
0
Rejoignez-nous