Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : lire un fichier binaire [ Archives / Fichier / Disque ] (ultrafil)

jeudi 22 janvier 2004 à 21:40:23 | lire un fichier binaire

ultrafil

Salut, j'ai besoin de lire des données dans un fichier binaire.
Mon problème c'est que je n'arrive pas à faire de conversion en byte[]

Je m'explique, j'utilise FileStream.Read qui attend un byte[] en argument, le probleme c'est la conversion du byte[] en int ou en double, ou mieu encore en classe :(

J'ai tenté de convertir avec Convert avec System.Array apres avoir essayé les cast explicite mais rien a faire, si quelqu'un à une idée :) je suis preneur.

www.ultrafil.fr.st

vendredi 23 janvier 2004 à 06:20:06 | Re : lire un fichier binaire

vieuxLion

Salut,

le mieux est de Désérialiser par la même Api que lors de la sérialisation.
Cela évite de descendre au niveau des Bytes

encore faut il avoir la main sur la création du fichier binaire...


vendredi 23 janvier 2004 à 14:05:52 | Re : lire un fichier binaire

ultrafil

En fait j'ai besion de lire un fichier .bsp (map de quake3) car je crée un moteur 3D en opengl (C# / csgl).

Et donc je n'ai pas le choix :( je dois absolument convertir mon byte[] en int voir en class.

Personne n'a un bout de code qui permettrais de faire ca? :)
ultrafil.fr.st

vendredi 23 janvier 2004 à 14:46:04 | Re : lire un fichier binaire

vieuxLion

bon, alors il est toujours possible de lire le fichier par groupe de 4 octets et d'écrire une fonction de conversion en int
(sous réserve qu'il n'en existe pas dans la BCL)
br est le BinaryReader, tabInt un tableau de réception des ints

int i=0;
byte[] b = new byte[4];
while (br.Read(b,0,4)!=0)
{
tabInt[i++] = ToInt(b);
}

et maintenant, la grande fonction ToInt :
private int ToInt(byte[] b)
{
return b[0]+b[1]*256+b[2]*256*256+b[3]*256*256*256;
}



lundi 26 janvier 2004 à 15:18:54 | Re : lire un fichier binaire

ultrafil

Je te remercie pour ton aide, ta technique doit surement bien fonctionner mais néammoins j'ai trouver la class BitConverter qui permet de faire exactement ce que j'ai besion :D

plus d'info sur: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystembitconverterclassgetbytestopic.asp


En faite cette classe BitConverter prend un tableu de byte en en choisit 4 (ou 8 si double)
contigue et les convert en float , int etc...

merci encore ^^

@++ et bon coding

ultrafil.fr.st

lundi 26 janvier 2004 à 19:36:45 | Re : lire un fichier binaire

vieuxLion

c'est moi qui te remercie
je n'avais pas vu cette classe

on peut coder
byte[] b = new byte[4];
while (r.Read(b,0,4)!=0)
{
tabInt[i]=BitConverter.ToInt32(b,0);
}

l'intérêt est qu'il existe des conversions pour tous les types courants



Cette discussion est classé dans : fichier, binaire, lire, conversion, byte


Répondre à ce message

Sujets en rapport avec ce message

Je veux lire un nombre double dans fichier binaire [ par vtvdung ] Je veux lire un nombre 4 ou 8 bytes dans un FileStream. Comment peux je faire? J'utilise FileStream.Read(...) et le donnee est stocke' dans un array. [C# 2.0] Le Binaire [ par iow4 ] Bonjour, j'aimerais pouvoir lire entierement tout le code binaire d'un fichier exe et le reécrire dans un autre fichier ( le cloner ou le generer ) Se Copier et lire le contenu d'un listbox dans un fichier XML [ par iblsysteme ] Intershoppingje suis nouveau  dans le domaine C#Je voudrai tous simplementune lecture et une ecriture dans un fichier XMLmais la source de départ est lire mp3 en boucle [ par Gargantuass ] Bonjour,   voila j'ai une application qui arrive à lire un fichier mp3 avec la librairie QuartzTypeLib cependant elle ne propose aucun moyen pour lire lire et ecrie à partir du fichier app.config [ par dorras7 ] Bonjour,je veux savoir comment lire et ecrie à partir du fichier app.config (c#)voici le fichier            &lt Serialisation XML d'un byte dans un fichier au format hexa ? [ par billou_13 ] Bonjour, bonjour ^^ Une t'chite question en ce beau mois d'Août qui ne devrait pas être si terrible que ça à résoudre. J'ai un objet classique com Lire fichier Setting [ par Souliabdo ] Bonjour, <p class="MsoNorma Lire flux XML [ par Pierrick34090 ] Salut,Voilà mon problème: (Langage C#) Je désire enregistrer un flux XML (du type blabla) dans ma base de données SQL Server. Ceci est très facile en Cryptage et problème de conversion de Byte[] [ par deve007 ] Bonjour , jai un  string que je doit obligatoirement convertir en tableau de Byte, cette conversion se passe mal voici l'exemple : jai


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,281 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.