Ecrire du texte dans un fichier binaire

Résolu
cs_christophedlr Messages postés 267 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 23 août 2023 - 6 nov. 2006 à 17:29
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 - 6 nov. 2006 à 20:32
Bonjour à tous,
Je suis entrain de faire un programme qui utilise les fichiers binaire.
Pour faire le programme, j'ai opté pour l'utilisation de BlockRead et BlockWrite.

Mais je me heurte à un problème avec BlockWrite.
Mon programme créés des fichers archives(donc binaire) dans le format PAK(format utilisé pour Quake et Half-Life 1).
Comme les fichiers placé dans l'archive sont créés via le programme, je voulais les enregistrer directement dans l'archive.
Le problème, c'est que je ne peux mettre le contenu d'un TEdit avec BlockWrite(la propriété .Text n'apaprait pas).
J'ai donc tenté en lui donnant uniquement la variable du TEdit que j'ai appelé: EName, puisque je ne peux pas mettre EName.Text.
Mais quand je regarde le contenu du fichier archive, le texte n'est pas écrit en clair, hors il faut qu'il soit écrit en clair.

Je voudrais donc savoir comment faire.
En fait, mon programme est un logiciel de carnet d'adresse assez complet, mais gérant plusieurs fichiers afin que plusieurs personnes utilisant le même PC, puisse avoir son propre carnet d'adresse.
Et donc pour cela, j'ai choisi d'utiliser le format PAK de Half-Life 1 et Quake, dans lequel je met des fichiers au format texte(.TXT) ayant le nom et le prénom donné dans le carnet d'adresse, ensuite le contenu du fichier texte contient tous les champs remplis dans le logiciel.

Si vous avez besoin de voir le code que j'ai pour le moment afin de pouvoir m'aider, dite le moi et je vous le poste .
Merci d'avance à ceux qui pourront m'aider.

2 réponses

cs_christophedlr Messages postés 267 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 23 août 2023 5
6 nov. 2006 à 20:02
Problème résolu, il me faut utiliser des shortstring.
3
f0xi Messages postés 4205 Date d'inscription samedi 16 octobre 2004 Statut Modérateur Dernière intervention 12 mars 2022 35
6 nov. 2006 à 20:32
tu peu utiliser PChar pour les string :

var
   PS : PChar;
begin
   PS := PChar(Edit1.Text);
   writebuffer(PS^, Length(Edit1.Text));
end;

<hr size="2" width="100%" />Croc (click me)
0
Rejoignez-nous