Comment lire et écrire dans un fichier binaire ? Urgent
cs_miriame
Messages postés40Date d'inscriptionjeudi 11 août 2005StatutMembreDernière intervention18 novembre 2005
-
12 août 2005 à 16:16
cs_miriame
Messages postés40Date d'inscriptionjeudi 11 août 2005StatutMembreDernière intervention18 novembre 2005
-
17 août 2005 à 10:05
J'aurai besoin d'aide svp je cherche à lire et écrire dans un fichier binaire en VBA? apparemment les fonctions binarywriter et binaryreader n'existe pas en VB.voici ce que j'ai commencé à develloper:
########################################################
Sub modify()
On Error Resume Next
Dim MyChar, cpt
'Close #1
Debug.Print
Open "D:\TestTE_Reusable_pointe_vers_local\Test.tsp" For Binary Access Read As #1 ' Open file.
Open "D:\TestTE_Reusable_pointe_vers_local\Test2.tsp" For Binary Access Write As #2
If Err.Number > 0 Then
Close #1
Open "D:\TestTE_Reusable_pointe_vers_local\Test.tsp" For Binary As #1 ' Open file.
End If
Debug.Print "************************DEBUT***************************"
res = ""
cpt = 0
Do While (Loc(1) < (LOF(1) - 256)) And (cpt < 10) ' Loop until end of file.
MyChar = Input(1, #1) ' Get one character.
MyChar = Hex(Asc(MyChar))
res = res + MyChar
Debug.Print MyChar '& Hex(Asc(MyChar)) Print to the Immediate window.
'Debug.Print MyChar
Close #2
Open "D:\TestTE_Reusable_pointe_vers_local\Test2.tsp" For Binary As #2 ' Open file.
End If
Debug.Print "************************FIN***************************"
Close #1
Debug.Print "after close #1"
Close #2
Debug.Print "after close #1"
End Sub
cs_Jack
Messages postés14007Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 12 août 2005 à 18:43
Salut
Le début est bon (l'ouverture) bien que bien compliqué avec cette gestion d'erreur bizarre.
Pour lire :
Dim Tablo() As Byte ' Tableau qui recevra les données
LLL = 100 ' nombre d'octets à lire
Redim Tablo(LLL) ' prépare le récepteur
Get #1, Position, Tablo
Voir aussi :
Put pour écrire (Ne pas utiliser Print avec un fichier ouvert en Binary)
Seek pour se déplacer dans le fichier
LOF(1) pour connaitre la taille du fichier
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
(je
cs_MasterHack
Messages postés586Date d'inscriptionjeudi 18 septembre 2003StatutMembreDernière intervention13 février 20082 13 août 2005 à 04:24
Salut,
desole ,pas optimize le code,:( bon voila , tout en etant d'accord avec Mr Jack,
pour lire des donnee en mode binaire
num=freefile
open chemin_du_fichier for binary as #num
stock=space(nbr_char_a_prendre) ' si tout stock=space(filelen(chemin_du_fichier))
get #num,position,stock ' pour lire du bebut position vaut 0
variable=stock
close #num
pour ecrire
num=freefile
open chemin_du_fichier for binary as #num
put #num,position,stock 'stock est ce que tu veut ecrire ds le fichier
close #num
bon reste a dire bonne prog a tout le monde , ciao
<HR>
Life is short...Learn more
Copy Rights <> Rights to Copy