LIRE UN FICHIER BINAIRE

RaftY Messages postés 56 Date d'inscription mardi 5 mars 2002 Statut Membre Dernière intervention 12 août 2010 - 5 mars 2002 à 17:49
coyoterunstar Messages postés 14 Date d'inscription jeudi 16 janvier 2003 Statut Membre Dernière intervention 19 octobre 2004 - 9 mai 2004 à 03:10
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/11679-lire-un-fichier-binaire

coyoterunstar Messages postés 14 Date d'inscription jeudi 16 janvier 2003 Statut Membre Dernière intervention 19 octobre 2004
9 mai 2004 à 03:10
De la manière dont tu procède c'est excesivement long et pour rien du tout. Tu perd énormement de temps en traitement quand tu fais :

memo1.Text := memo1.Text + Char(StrToInt(ListBox1.Items.Strings[i]));

-Solution-
En 30 secondes j'ai modifié ton source (apres avoir du faire un fin de tache de l'appli lancée car bcp bcp bcp trop long)

Tu déclare une Variable de type String que j'ai appelé Variable (justement .. pkoi se creuser la tete)

For i:= 0 to ListBox1.Count -1 do
Begin
Gauge1.Progress := i;

If ListBox1.Items.Strings[i] = '0' Then
Begin
Variable := Variable + '.';
end
else
Begin
Variable := Variable + Char(StrToInt(ListBox1.Items.Strings[i]));
End;
End;
memo1.Text := Variable;

Et là oh miracle !! comment c'est presque instantanné .. voilou ;-)
Mais c'est bien de mettre des exemples comme ca, moi je viens de commencer le Delphi (je suis codeur C++ et VB)
Msgbox Messages postés 67 Date d'inscription lundi 1 juillet 2002 Statut Membre Dernière intervention 1 septembre 2006
27 août 2003 à 20:04
Et en tablo dynamique ca marche pas ?
RaftY Messages postés 56 Date d'inscription mardi 5 mars 2002 Statut Membre Dernière intervention 12 août 2010
5 mars 2002 à 17:49
Effectivement, je viens de lire ton source, la méthode est lourde, on charge tout en RAM, et on dicotonise. Mais une question, ceci ne marche pour des fichiers inférieure ou égal à 10000 octets soit 9,76 Ko. Je n'en accomoderai, merci pour le source
Rejoignez-nous