Lire un Fichier Binaire

cs_dbx99
Messages postés
19
Date d'inscription
mardi 14 novembre 2000
Statut
Membre
Dernière intervention
23 novembre 2010
- 27 avril 2005 à 13:19
cs_dbx99
Messages postés
19
Date d'inscription
mardi 14 novembre 2000
Statut
Membre
Dernière intervention
23 novembre 2010
- 28 avril 2005 à 05:56
Bonjour,

je suis un développeur débutant !

Mon problème est le suivant :

Je veux ouvrir un fichier (.mp3) en mode binaire pour en extraire le TAG. Je connais maintenant la construction d'un TAG de fichier mp3.

Il me faut pour cela :

-Ouvrir le fichier en mode binaire
-Rechercher l'ID d'une frame ex. "COMM"
-Lire de cette position un nombre de bytes donnés
-Récupérer les Bytes lus en une chaîne de charactère et remplacer les bytes HEX 00 par ""

Je me perds dans mon MSDN

je sais ouvrir le fichier en binaire "FileOpen(1,"xxx",OpenMode.Binary)

Aidez-moi svp........

DeepBlueX

2 réponses

Gobillot
Messages postés
3140
Date d'inscription
vendredi 14 mai 2004
Statut
Membre
Dernière intervention
11 mars 2019
33
27 avril 2005 à 13:57
début du Tag (Id3-v2) si existe: "ID3"
Tag (Id3-v1) si existe: 128 derniers caractères
début des frames: 12 bits à 1 soit "FFF"
soit "FFFB" le plus souvent, parfois "FFFA"
parce que problème avec "FFFF"

- difficile de manipuler des bits en VB
- inutile de faire de conversion --> Lecture directe dans Tableau de Bytes
- le caractère zéro est un caractère comme un autre
- la Longueur de chaque élément de zone (TIT2, TRCK, TYER, COMM, etc ) est codé en binaire d'où la présence des zéros possible.

Daniel
0
cs_dbx99
Messages postés
19
Date d'inscription
mardi 14 novembre 2000
Statut
Membre
Dernière intervention
23 novembre 2010

28 avril 2005 à 05:56
Merci beaucoup Daniel,

je viens de passer à VB .NET et je n'avais jamais travaillé sur des fichier binaire en VB 6. Cela fait pour moi deux nouvelles choses.

Cela prendra un peu de temps mais je vais y arriver. Je ne voulais pas utiliser une source toute faite car j'aime comprendre les principe de base à fond.

J'orai sûrement encore des questions....

merci et à la prochaine

DeepBlueX
0