begin process at 2012 05 28 23:07:00
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

convertion fichier binaire a hexadecimal


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

convertion fichier binaire a hexadecimal

mardi 23 août 2011 à 17:38:09 | convertion fichier binaire a hexadecimal

mangarance

salut a tout le monde j'aurai besoin d'aide pour ce code
code :


#include<stdlib.h>
#include<stdio.h>


void BinHexaCON(char *hexa,int *x0);

int main()
{
FILE *fichier_lu = NULL;
FILE *fichier_convertit;
char bin[8];
int b[10],i,n;
char caracter = 0;

/*ouvertur du fichier a convertir*/
fichier_lu = fopen("ACQ_b05698858.dat","rb");

if(fichier_lu != NULL)
{

/*fichier accueillant la convertion hexa*/
fichier_convertit = fopen("ConversionUP.txt","w+");
if(fichier_convertit != NULL)
{
do {
caracter = fgetc(fichier_lu);
/* On vérifie que le caractère lu soit bien en valeur binaire */
if ((caracter >= '0') && (caracter <= '1'))
{
//convertion
bin[0] = caracter;
//BinHexaCON();
char *hexa;
int *x0;
BinHexaCON(&hexa[0], &b[3], &b[2], &b[1], &b[0]);
// fprintf(fichier_convertit,"%s",/*b[0],b[1],b[2],b[3]*/fichier_convertit);
fprintf(fichier_convertit,"%d",i,n);//"%d%d%d%d",b[3],b[2],b[1],b[0]);
// fprintf(fichier_convertit,"%s",fichier_convertit);
}
} while (caracter != EOF);

}
}

}
/* fonction convertissant un caractère héxadécimal en binaire sur 4 bits. Retourne -1 si le
* caractère à convertir n'est pas valide, 0 sinon. */
int BinToHexa (int bin,char *x0)
{
switch (bin)
{
case 0000 : *x0 = '0';
break;
case 0001 : *x0 = '1';
break;
case 0010 : *x0 = '2';
break;
case 0011 : *x0 = '3';
break;
case 0100 : *x0 = '4';
break;
case 0101 : *x0 = '5';
break;
case 0110 : *x0 = '6';
break;
case 0111 : *x0 = '7';
break;
case 1000 : *x0 = '8';
break;
case 1001 : *x0 = '9';
break;
case 1010 : *x0 = 'A';
break;
case 1011 : *x0 = 'B';
break;
case 1100 : *x0 = 'C';
break;
case 1101 : *x0 = 'D';
break;
case 1110 : *x0 = 'E';
break;
case 1111 : *x0 = 'F';
break;
default : return -1;
}
//return 10;
}




/*
while(caracter != EOF)
{
caracter = fgetc(fichier_lu);


if ((caracter >= '0') && (caracter <= '1'))
{
goto convertion;
}
else
{
;
}

if((caracter != EOF))
{
bin[0] = caracter;
BinHexa();
fprintf(fichier_convertit,"%d%d%d%d");
}
else
{
;
}*/

mardi 23 août 2011 à 17:54:24 | Re : convertion fichier binaire a hexadecimal

GodConan


salut, ...

hmmm!! on serait pas sur le fofo java la???
ton prog c est du C++ et de plus quelle est la question????

GodConan ;o)
mardi 23 août 2011 à 18:11:25 | Re : convertion fichier binaire a hexadecimal

mangarance

je veux convertir un fichier binaire en hexadécimal !
mardi 23 août 2011 à 18:36:33 | Re : convertion fichier binaire a hexadecimal

GodConan


C est bien ce que je dis o) ce n est en rien une question!!! ;o)
Mais vu du code présenté je me doute qu il doit y avoir quelques soucis ;o) ...
dejà présente ce que tu doit exactement faire quel est la structure de ton fichier source et celle que tu veux en destination!!!

Pour moi (dans mon language) ;o) un fichier binaire ou hexa c est la meme chose l hexa etant juste la facon de representer un fichier binaire... (pour faire plus court à ecrire) ;o)

GodConan ;o)
mardi 23 août 2011 à 19:54:13 | Re : convertion fichier binaire a hexadecimal

LA_Tupac

Membre Club
Ce code n'est pas de toi
J'ai bon hein?
De plus la question est sans fondement...
Les fichiers binaires sont déjà en héxa car codés à coup de 32b (2*16).
En tout cas ça crain de piquer une source et de balancer qu'on a un problème avec...
mardi 23 août 2011 à 22:46:39 | Re : convertion fichier binaire a hexadecimal

buno

Administrateur CodeS-SourceS
Bonsoir,

Code C/C++ :
if ((caracter >= '0') && (caracter <= '1')) 

Si tu rentre dans ce if, cela veut dire que caracter vaut soit 0, soit 1

Code C/C++ :
int BinToHexa (int bin,char *x0) 
{ 
switch (bin) 
{ 
case 0000 : *x0 = '0'; 
break; 
case 0001 : *x0 = '1'; 
break; 

Il y a un souci de compréhension et/ou de syntaxe. Dans tes conditions case, tu écris comme si tu voulais écrire en binaire. Or, cela ne va pas être compris ainsi mais bien 1, 10 (dix), 11 (onze),...

Et au fait, j'ai déplacé ta demande dans la section C/C++. Attention la prochaine fois...


@+
Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
mercredi 24 août 2011 à 00:50:54 | Re : convertion fichier binaire a hexadecimal

shorzy


Salut
Et Encore...

Quand il y a un Zéro devant ton Chiffre :
Le Compilo le Comprend comme de la Base 8
Soit : (010)Base8 == (8)Base10
Comprenez Vous ?

Et Puis Ton getchar() te renvoit directement un Hexa !!!!!
C à dire que tu peux t'arrêter là !!! c'est Fini !!! tu as ton Octet !!!


Ou tu ne sais pas ce que tu veux faire,
ou tu ne sais pas ce que tu fais !!!




Comment as tu su d'où il sortait ça, LA_Tupac ?



------------
Yeeh Baby
mercredi 24 août 2011 à 01:03:24 | Re : convertion fichier binaire a hexadecimal

LA_Tupac

Membre Club
Le feeling
Le gars te sort une aberration énorme et un code super commenté digne d'un tuto de site de prog ...
Pour moi ça part d'une erreur d&#8217;interprétation :
"Le binaire c'est 0&1, l'hexa c'est 0->f, donc c'est forcément différent."
Et un essai de solution :
"google, dis moi comment convertir du binaire en hexa"
Et là, c'est le drame


Cette discussion est classée dans : fichier, convertion, lu, convertit, caracter


Répondre à ce message

Sujets en rapport avec ce message

Convertion de format audio [ par yellowmat ] Salut tout le monde,Je suis nouveau dans le développement et j'ai une question à poser.J'ai un soft qui fait l'acquisition de la voix de l'utilisateur Convertion Excel Access [ par RunKi ] Salut à tous,Comment faire au plus simple pour dans une appli, récupérer les infos d'un fichier excel pour alimenter une base Access.Existe t-il une f Charger un fichier 3ds ou un 3ds convertit en x [ par MasterShadows ] Bonjour à tous.Bon, voilà, je veux me faire les pattes avec DirectX 9.0, donc j'ai voulu ecrireun programme sympa mettant en scène des vaisseaux spati lecture fichier texte [ par SnakeEyes38 ] Bonjour et désolé de vous déranger.J'ai un petit probleme pour lire un fichier txt. Mon fichier texte se présente sous cette forme : aa -3.667 -6.5 lire d'un fichier texte en c++ [ par sny2009 ] Bonjour, Je rencontre un problème avec la fonction fread Je veux lire un nombre de caractère N de fichier texte voila le code : [b]nb_car_lu=fread un tableau lu par tout les fichier [ par Adeon ] Salut !Je suis en train de fabriquer un jeu.Dans ce jeu, un tablau 2 dimention defini chaque case de la map par une valeur int. Cela s'appelle une mat Lire un fichier via HTTP [ par yugiohjcj ] Bonjour,je programme en C et je sais ouvrir/lire/écrire un fichier grâce à fopen() sur mon disque dur. Mais là, je veux faire exactement pareil sauf q Peut on ouvrir un fichier à distance ?!? [ par LiBe444 ] Cette question est bête mais j'aimerais savoir si on peut affecter à un handle la valeur FILE* hFile=fopen("http://www.example.com/truc","r");ou si c' code ascii [ par maevasa ] bonjour!voilà je cherche à retirer un nombre variable (entier) à la valeur ascii d'une lettre récupéré dans le fichier fad et d'écrire la lettre trouv probleme de listage de fichiers [ par Kevin972 ] salut!! je ne comprends pas la fonction ne liste rien du tout.........al'aide!!!!!!!!!!!!!!!!! voici ma fonction:#include#include#include#include#in


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales