begin process at 2012 05 30 13:36:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Général

 > 

Texte2Hexa


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

Texte2Hexa

mardi 19 septembre 2006 à 22:57:58 | Texte2Hexa

Matt67

Bonjour,

Je voudrais savoir si on pouvait optimiser ceci :

#include <stdio.h>
#include <string.h>

int main()
{
    static char *conv[] = {"00 ", "01 ", "02 ", "03 ", "04 ", "05 ", "06 ", "07 ", "08 ", "09 ", "0A ", "0B ", "0C ", "0D ", "0E ", "0F ",
                           "10 ", "11 ", "12 ", "13 ", "14 ", "15 ", "16 ", "17 ", "18 ", "19 ", "1A ", "1B ", "1C ", "1D ", "1E ", "1F ",
               "20 ", "21 ", "22 ", "23 ", "24 ", "25 ", "26 ", "27 ", "28 ", "29 ", "2A ", "2B ", "2C ", "2D ", "2E ", "2F ",
               "30 ", "31 ", "32 ", "33 ", "34 ", "35 ", "36 ", "37 ", "38 ", "39 ", "3A ", "3B ", "3C ", "3D ", "3E ", "3F ",
               "40 ", "41 ", "42 ", "43 ", "44 ", "45 ", "46 ", "47 ", "48 ", "49 ", "4A ", "4B ", "4C ", "4D ", "4E ", "4F ",
               "50 ", "51 ", "52 ", "53 ", "54 ", "55 ", "56 ", "57 ", "58 ", "59 ", "5A ", "5B ", "5C ", "5D ", "5E ", "5F ",
               "60 ", "61 ", "62 ", "63 ", "64 ", "65 ", "66 ", "67 ", "68 ", "69 ", "6A ", "6B ", "6C ", "6D ", "6E ", "6F ",
               "70 ", "71 ", "72 ", "73 ", "74 ", "75 ", "76 ", "77 ", "78 ", "79 ", "7A ", "7B ", "7C ", "7D ", "7E ", "7F ",
               "80 ", "81 ", "82 ", "83 ", "84 ", "85 ", "86 ", "87 ", "88 ", "89 ", "8A ", "8B ", "8C ", "8D ", "8E ", "8F ",
               "90 ", "91 ", "92 ", "93 ", "94 ", "95 ", "96 ", "97 ", "98 ", "99 ", "9A ", "9B ", "9C ", "9D ", "9E ", "9F ",
               "A0 ", "A1 ", "A2 ", "A3 ", "A4 ", "A5 ", "A6 ", "A7 ", "A8 ", "A9 ", "AA ", "AB ", "AC ", "AD ", "AE ", "AF ",
               "B0 ", "B1 ", "B2 ", "B3 ", "B4 ", "B5 ", "B6 ", "B7 ", "B8 ", "B9 ", "BA ", "BB ", "BC ", "BD ", "BE ", "BF ",
               "C0 ", "C1 ", "C2 ", "C3 ", "C4 ", "C5 ", "C6 ", "C7 ", "C8 ", "C9 ", "CA ", "CB ", "CC ", "CD ", "CE ", "CF ",
               "D0 ", "D1 ", "D2 ", "D3 ", "D4 ", "D5 ", "D6 ", "D7 ", "D8 ", "D9 ", "DA ", "DB ", "DC ", "DD ", "DE ", "DF ",
               "E0 ", "E1 ", "E2 ", "E3 ", "E4 ", "E5 ", "E6 ", "E7 ", "E8 ", "E9 ", "EA ", "EB ", "EC ", "ED ", "EE ", "EF ",
               "F0 ", "F1 ", "F2 ", "F3 ", "F4 ", "F5 ", "F6 ", "F7 ", "F8 ", "F9 ", "FA ", "FB ", "FC ", "FD ", "FE ", "FF "};

    char *texte = "bonjour";

    int taille = strlen(texte);
    int i;
   
    for(i = 0; i < taille; i++)
    printf("%s", conv[texte[i]]);
       
    printf("\n");

    return 0;
}

Mon soucis, c'est que je veux afficher à l'ecran (ou dans un textedit ou autre) l'Hexa (formaté sur 2 caractères + 1 espace) d'un fichier data (avec tout plein de  '\0') donc a la place de ma boucle, je charge un fichier en memoire (des fichiers de taille max d'environ 10 Mo) puis je le parse, caractere par caractere (ca risque d'etre long non ?)

Merci pour vos réponses,

Matt...
mardi 19 septembre 2006 à 23:15:02 | Re : Texte2Hexa

eRoZion

Membre Club
Salut

for(i = 0; i < taille; i++)
printf("%02x ou %02X", i);


Sinon pour textedit ou autre regarde du coté de wprintf toujours avec le %02x ou %02X.

++


eRoZion
mercredi 20 septembre 2006 à 01:18:23 | Re : Texte2Hexa

SAKingdom

Membre Club
Errr, je vois pas le rapport en wprintf et un textedit.

Sinon, convertir un fichier de 10Mo et l'afficher dans un textedit en tenant compte que chaque valeur convertie qui prenait initialement 1 octet en prendra maintenant 3 est impensable. Si tu prévoie réelement convertir ce genre de fichier, il faudra trouver une solution comme l'écrire dans un autre fichier.

Pour ce qui est de la lenteur potentiel, en effet, ce sera lent (surtout pour un fichier de 10Mo) mais je ne vois pas comment faire autrement.

C++ (@++)
___________________________________________
Les plus grands esprits trouvent toujours une solution



Cette discussion est classée dans : int, texte, include, char, texte2hexa


Répondre à ce message

Sujets en rapport avec ce message

Dans le genre prenant........ [ par Xs ] oui !c 'est trés chiant !j'explique mon pb : j'ai un code source, fais par moi-meme, et dedans, je veux que l'on saisisse des renseignement comme le l pb error C2011 par pitié aidé moi [ par neonmix ] Voici mon prog:c'est un garage ki possède des voitures, ces voitures peuvent être "de course" ou "de série" (classe mere voiture, classe fille voiture problème de char [ par minet03 ] Coucoutout le monde, tout d'abord voilà mon code :#include #include #include #include #include #include char *bin_dec(char *binai Petit problème avec NEW DELETE et RETURN [ par kuruma ] Bonjourj'ai un petit problème avec cette fonction. en c++ ou c :#include #include #include #include #include #include <cst Prob avec les sockets [ par Sload ] Bonjour à tous ! Voila mon probleme , j'essaye de develloper un logiciel client/serveur. Je n'en suis qu'au tout début et j'ai déja un probleme lol ! oh non!! [ par bako25 ] Le prog suivant  calcule le nombre des 'e' dans un paragraphe: #include #include< Prob avec les variables [ par Ilsundal ] Bonjour a tous,voila mon probleme, j'ai declaré une variable, mais quand je lui assigne par exemple  : MAISON, il m'affiche que M. comment faire pour Url encoding [ par Lestat_2070 ] Bonjour à tous,Tout d'abord, j'espère que je ne me trompes pas de section, pour ce sujet. Ensuite, j'essaye de faire une fonction comparable à la fonc [c++]nom de la fenetre dans focus [ par kiki67100 ] Bonjour voila jaimerais avoir le nom de la fenetre qui se trouve dans le focus jai deja un code mais il me sort du texte bizzare voila le code :#inclu plus court chement avec le cout [ par developvbdebut ] Bonsoir tout le mondeJ'ai un probleme avec l'algo du plus cours chemin, je ne vois pas comment mis prendre. De plus, je dois affichier la distance e


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

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,764 sec (4)

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