Supprimer des offsets au début d'un fichier [Résolu]

Signaler
Messages postés
6
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
16 octobre 2007
-
Messages postés
6
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
16 octobre 2007
-
Bonjour à tous, j'aimerai savoir comme supprimer quelques offsets au début d'un fichier par exemple l'offset de 0 à 67, j'espère être clair. Si vous avez une solution car je galère grave je suis débutant.
Merci à tous

--(sZ)

4 réponses

Messages postés
206
Date d'inscription
lundi 22 novembre 1999
Statut
Membre
Dernière intervention
3 juillet 2008

Bonjour,

Le principe est simple :
- Ouvrir le fichier en mode binaire
- Connaitre la taille du fichier ouvert moins 67 et stocker la valeur obtenue dans une variable entière (exemple iLen )
- Faire un FileSeek du fichier et lui donner la position 68 à compter du debut du fichier.
- Allouer une variable qui contiendra les données de type Byte(iLen) et charger le contenu du fichier à hauteur de iLen octets dedans et le tour est joué :)

En FBSL ça donnerait ceci : ( je n'ai pas VS ici )
#apptype console

Begin Const
  offset  = 67
  theFile = "Test.xml"
End Const

Dim $bufferDim %fp 0, %iLen FileLen(theFile) - offset

fp = FileOpen( theFile, BINARY_INPUT )
FileSeek( fp, offset )
buffer = FileGet( fp, iLen )
FileClose( fp )

Print buffer
Pause

Gérôme GUILLEMIN
Auteur du langage FBSL
Messages postés
2676
Date d'inscription
vendredi 28 juin 2002
Statut
Membre
Dernière intervention
13 janvier 2016
18
salut,

en vb.net  ca donnerait :
dim inFile as new filestream("fichier_entrée",filemode.open)
dim buff(infile.length - 68 - 1) as byte
infile.position = 68
infile.read(buff,0,buff.length)
infile.close()
infile = new filestream("fichier_sortie",filemode.truncate)
infile.write(buff,0,buff.length)
infile.close()

ShareVB
Messages postés
6
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
16 octobre 2007

ah oui sinon j'utilise visual studio express 2005

--(sZ)
Messages postés
6
Date d'inscription
vendredi 28 mai 2004
Statut
Membre
Dernière intervention
16 octobre 2007

Merci pour vos réponse, c'est pilpoil ce que je recherchai depuis un long moment. merci encore.

--(sZ)