Tronquer un fichier [Résolu]

Signaler
Messages postés
59
Date d'inscription
dimanche 4 mai 2003
Statut
Membre
Dernière intervention
5 juillet 2005
-
Messages postés
59
Date d'inscription
dimanche 4 mai 2003
Statut
Membre
Dernière intervention
5 juillet 2005
-
salut, un léger problème, enfin pas un problème mais plutot une recherche d'optimisation.
Ce que je voudrais faire, c'est ne garder qu'une partie d'un fichier, c'est a dire le fichier moins les 128 derniers octets. Je pourrais le faire en passant par un fichier buffer, copie du fichier moins la fin, suppression et renommage du buffer, mais je trovue ca lourd et inaproprié dans ce cas. Ne pourrait-t-on pas simplement tronquer le fichier, ou écrire le symbole de fin du fichier ? (il me semble qu'écrire le symbole est possible mais je ne me souviens pas, ca fait longtemps que j'avais laché le delphi...)

++
Julien

2 réponses

Messages postés
374
Date d'inscription
vendredi 20 octobre 2000
Statut
Modérateur
Dernière intervention
15 janvier 2021

Function TruncFile(Fn:String;Ns:Int64):Boolean;
Begin
Result:=False;
Try
with TFileStream.Create(Fn,fmOpenWrite) do
begin
Size:=ns;
Result:=True;
free;
end;
Except
end;
end;


procedure TForm1.Button1Click(Sender: TObject);
begin
If TruncFile('C:\Test.Tst',512) then
Showmessage('Fichier mis a la taille de 512 Octets')
else
Showmessage('Erreur lors du changement de la taille du fichier');
end;

Bon Coding ....

ManChesTer.
Messages postés
59
Date d'inscription
dimanche 4 mai 2003
Statut
Membre
Dernière intervention
5 juillet 2005

merci bcp !