La lecture et l'écriture d'un fichier vers et à partir d'une chaîne


Cet article inroduces deux fonctions pratiques pour la lecture de la contens d'un fichier dans une chaîne de caractères et l'écriture d'une chaîne de caractères dans un fichier.
la Lecture d'un fichier dans une chaîne de caractères
peut-être la façon la plus simple pour lire un fichier en une chaîne de caractères est l'aide de l'option LoadFromFile méthode TStringList de l'objet et ensuite l'accès à ses Texte de la propriété:
SysUtils, Les Classes
& nbsp & nbsp fonction LoadFile(const nom du fichier: TFileName): string
& nbsp & nbsp démarrer
& ! & ! & ! & nbsp avec TStringList.Créer ne
& ! & ! & ! & ! & ! & nbsp essayer
& ! & ! & ! & ! & ! & ! & ! & nbsp LoadFromFile(nom de fichier)
& ! & ! & ! & ! & ! & ! & ! & nbsp Résultat := Texte
& ! & ! & ! & ! & ! & nbsp enfin
& ! & ! & ! & ! & ! & ! & ! & nbsp Gratuit
& ! & ! & ! & ! & ! & nbsp fin
& nbsp & nbsp fin

Cependant, cette façon de faire est inefficace, car LoadFromFile charge le fichier et l'analyse de séparer les lignes, et puis, quand nous utilisons le Texte de la propriété, une méthode interne est appelé à produire une chaîne de rejoindre les lignes, de sorte que ce double emploi est fait pour rien, de plus nous utilisons de plus que le double de la mémoire de stockage nous réellement besoin (jusqu'à ce que nous gratuit le TStringList).
mieux
Une meilleure approche pourrait être l'aide d'un TFileStream de l'objet (ou l'ancien Assign, Reset, Lire et Fermer procédures) de lire directement le contenu d'un fichier dans une chaîne. Ici est la même fonction à l'aide de TFileStream qui renvoie le contenu du fichier dont le nom est passé en paramètre:
SysUtils, Classes

& nbsp & nbsp fonction LoadFile(const nom du fichier: TFileName): string
& nbsp & nbsp démarrer
& ! & ! & ! & nbsp avec TFileStream.Créer(nom de fichier,
& ! & ! & ! & ! & ! & nbsp fmOpenRead ou fmShareDenyWrite) commencer
& ! & ! & ! & ! & ! & nbsp essayer
& ! & ! & ! & ! & ! & ! & ! & nbsp SetLength(Résultat, Taille)
& ! & ! & ! & ! & ! & ! & ! & nbsp Lire(Pointeur(Suite)^, Stream.Taille)
& ! & ! & ! & ! & ! & nbsp sauf
& ! & ! & ! & ! & ! & ! & ! & nbsp Résultat := ' // Libère la mémoire
& ! & ! & ! & ! & ! & ! & ! & nbsp Gratuit
& ! & ! & ! & ! & ! & ! & ! & nbsp augmenter
& ! & ! & ! & ! & ! & nbsp fin
& ! & ! & ! & ! & ! & nbsp Gratuit
& ! & ! & ! & nbsp fin
& nbsp & nbsp fin

l'Écriture d'un fichier à partir d'une chaîne de caractères
Si nous avions besoin de sauvegarder le contenu de la chaîne de retour sur disque, on peut utiliser la procédure suivante:
SysUtils, Les Classes
& nbsp & nbsp procédure SaveFile(const nom du fichier: TFileName
& ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & nbsp const contenu: string)
& nbsp & nbsp démarrer
& ! & ! & ! & nbsp avec TFileStream.Créer(nom de fichier, fmCreate) ne
& ! & ! & ! & ! & ! & nbsp essayer
& ! & ! & ! & ! & ! & ! & ! & nbsp Écrire(Pointeur(contenu)^, Longueur(contenu))
& ! & ! & ! & ! & ! & nbsp enfin
& ! & ! & ! & ! & ! & ! & ! & nbsp Gratuit
& ! & ! & ! & ! & ! & nbsp fin
& nbsp & nbsp fin









La lecture et l'ecriture d'un fichier vers et a partir d'une chaîne


La lecture et l'ecriture d'un fichier vers et a partir d'une chaîne : Plusieurs milliers de conseils pour vous faciliter la vie.


Cet article inroduces deux fonctions pratiques pour la lecture de la contens d'un fichier dans une chaîne de caracteres et l'ecriture d'une chaîne de caracteres dans un fichier.
la Lecture d'un fichier dans une chaîne de caracteres
peut-etre la façon la plus simple pour lire un fichier en une chaîne de caracteres est l'aide de l'option LoadFromFile methode TStringList de l'objet et ensuite l'acces a ses Texte de la propriete:
SysUtils, Les Classes
& nbsp & nbsp fonction LoadFile(const nom du fichier: TFileName): string
& nbsp & nbsp demarrer
& ! & ! & ! & nbsp avec TStringList.Creer ne
& ! & ! & ! & ! & ! & nbsp essayer
& ! & ! & ! & ! & ! & ! & ! & nbsp LoadFromFile(nom de fichier)
& ! & ! & ! & ! & ! & ! & ! & nbsp Resultat := Texte
& ! & ! & ! & ! & ! & nbsp enfin
& ! & ! & ! & ! & ! & ! & ! & nbsp Gratuit
& ! & ! & ! & ! & ! & nbsp fin
& nbsp & nbsp fin

Cependant, cette façon de faire est inefficace, car LoadFromFile charge le fichier et l'analyse de separer les lignes, et puis, quand nous utilisons le Texte de la propriete, une methode interne est appele a produire une chaîne de rejoindre les lignes, de sorte que ce double emploi est fait pour rien, de plus nous utilisons de plus que le double de la memoire de stockage nous reellement besoin (jusqu'a ce que nous gratuit le TStringList).
mieux
Une meilleure approche pourrait etre l'aide d'un TFileStream de l'objet (ou l'ancien Assign, Reset, Lire et Fermer procedures) de lire directement le contenu d'un fichier dans une chaîne. Ici est la meme fonction a l'aide de TFileStream qui renvoie le contenu du fichier dont le nom est passe en parametre:
SysUtils, Classes

& nbsp & nbsp fonction LoadFile(const nom du fichier: TFileName): string
& nbsp & nbsp demarrer
& ! & ! & ! & nbsp avec TFileStream.Creer(nom de fichier,
& ! & ! & ! & ! & ! & nbsp fmOpenRead ou fmShareDenyWrite) commencer
& ! & ! & ! & ! & ! & nbsp essayer
& ! & ! & ! & ! & ! & ! & ! & nbsp SetLength(Resultat, Taille)
& ! & ! & ! & ! & ! & ! & ! & nbsp Lire(Pointeur(Suite)^, Stream.Taille)
& ! & ! & ! & ! & ! & nbsp sauf
& ! & ! & ! & ! & ! & ! & ! & nbsp Resultat := ' // Libere la memoire
& ! & ! & ! & ! & ! & ! & ! & nbsp Gratuit
& ! & ! & ! & ! & ! & ! & ! & nbsp augmenter
& ! & ! & ! & ! & ! & nbsp fin
& ! & ! & ! & ! & ! & nbsp Gratuit
& ! & ! & ! & nbsp fin
& nbsp & nbsp fin

l'Ecriture d'un fichier a partir d'une chaîne de caracteres
Si nous avions besoin de sauvegarder le contenu de la chaîne de retour sur disque, on peut utiliser la procedure suivante:
SysUtils, Les Classes
& nbsp & nbsp procedure SaveFile(const nom du fichier: TFileName
& ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & ! & nbsp const contenu: string)
& nbsp & nbsp demarrer
& ! & ! & ! & nbsp avec TFileStream.Creer(nom de fichier, fmCreate) ne
& ! & ! & ! & ! & ! & nbsp essayer
& ! & ! & ! & ! & ! & ! & ! & nbsp Ecrire(Pointeur(contenu)^, Longueur(contenu))
& ! & ! & ! & ! & ! & nbsp enfin
& ! & ! & ! & ! & ! & ! & ! & nbsp Gratuit
& ! & ! & ! & ! & ! & nbsp fin
& nbsp & nbsp fin


La lecture et l'écriture d'un fichier vers et à partir d'une chaîne

La lecture et l'écriture d'un fichier vers et à partir d'une chaîne : Plusieurs milliers de conseils pour vous faciliter la vie.
Recommander aux amis
  • gplus
  • pinterest

Messages récents

Commentaire

Laisser un commentaire

évaluation