Bonjour à tous,
Le contexte : j'ai construit une application utilisant plusieurs fichiers séquentiels genre ceci :
Très bien jusqu'au moment ou je tombe sur ce tutoriel sur les fichiers https://fbeaulieu.developpez.com/guide/?page=page_13 qui me fait prendre conscience que dans mes fichiers, je n'utilise quasiment jamais la totalité de la place prise par les champs et qu'il y a donc moyen de réduire la taille des champs à la longueur réelle de l'information contenue (partie sur les fichiers binaires de cet article)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 TEnregistrement=Record Champ1:String[10]; Champ2:String[20]; Champ3:String[50]; Champ4:String[100];
Super, et je me dis que je vais pouvoir en profiter pour ajouter en tête de fichier un certain nombre d'information (par exemple la date et heure du dernier accès au fichier), information qui n'a rien à faire dans les champs du fichier ...
Et puis je tombe sur les Streams, entre autre https://delphi.developpez.com/faq/?p...classe-TStream
Et du coup ... je ne sais pas quoi choisir comme méthode! J'ai bien cherché des comparatifs, mais sans grand succès.
Mon objectif est :
- avoir une structure de fichier la plus compacte possible (pas de blanc pour remplir des zones non utilisée : par exemple 'BONJOUR' dans le champs4 (String[100]) donne 93 octets vides!
- Pouvoir écrire/lire des informations avant les enregistrements
- je ne gère que des type strings (en réalité shortstring), rien d'autre.
- Rapidité d'accès à un enregistrement
Vous pouvez m'aider à débroussailler le foutoir ?
Partager