ENREGISTRER ET RELIRE UN TSTRINGGRID AVEC UN FICHIER .INI

cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 - 19 janv. 2003 à 10:56
cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 - 19 janv. 2003 à 15:15
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/12299-enregistrer-et-relire-un-tstringgrid-avec-un-fichier-ini

cs_Nono40 Messages postés 962 Date d'inscription mercredi 3 avril 2002 Statut Membre Dernière intervention 12 septembre 2006 2
19 janv. 2003 à 15:15
Dans le cas d'un fichier INI de plus de 64 Ko, il faudra donc utiliser ta méthode, mais j'aimerais avoir un copie d'écran d'un TStringGrid contenant plus de 64Ko de texte...
On peut aussi réduire la taille du fichier ini en n'enregistrant pas les cases vides si la grille en contient beaucoup :
for i:=0 to ColCount-1 do for j:=0 to RowCount-1 do
If Cells[i,j]<>'' Then Ini.WriteString(IntToStr(i),IntToStr(j),Cells[i,j]);
La lecture n'est pas changée, car la chaine vide est la valeur par défaut.

Quant aux objets associée, il n'est pas facile de faire une procédure générique vu que Objects peut être de n'importe quel type y compris un Integer transtypé...
cs_Bestiol Messages postés 833 Date d'inscription dimanche 6 janvier 2002 Statut Membre Dernière intervention 3 novembre 2005 1
19 janv. 2003 à 13:40
Et les droits d'auteurs ?!! lol
Voilà une bonne mise en pratique !
cs_Delphiprog Messages postés 4297 Date d'inscription samedi 19 janvier 2002 Statut Membre Dernière intervention 9 janvier 2013 32
19 janv. 2003 à 10:56
Félicitations pour ce code 100% efficace.
Comme quoi la classe TIniFile peut servir à plein de choses inattendues et a encore de beaux jours devant elle !
Rappelons toutefois la limitation de taille des fichiers à 64 Ko et que les objets liés aux cellules de la grille ne seront pas sauvegardés par ce procédé. Mais là, c'est autrement plus complexe.
Rejoignez-nous