begin process at 2010 02 10 13:18:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Delphi

 > 

Divers

 > 

Débutant(e)

 > 

retour chariot sur dernière ligne d'un fichier


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

retour chariot sur dernière ligne d'un fichier

mercredi 10 janvier 2007 à 14:16:22 | retour chariot sur dernière ligne d'un fichier

furax13

bonjour,
j'ai déclaré une variable FicCsvResultOptim de type text
j'utilise les méthode 
  AssignFile(FicCsvResultOptim, nomFichierRecuit);
  reset(FicCsvResultOptim);


   j'aimerai me positionner sur la dernière ligne du fichier et ajouter si besoin est un retour chariot sur cette ligne.

Comment faire?

merci pour votre aide.

emmanuel

mercredi 10 janvier 2007 à 15:04:52 | Re : retour chariot sur dernière ligne d'un fichier

ndsaerith

Alors pour ce qui est du retout chario, c'est comme pour ecrire sauf que tu met une chaine vide.
Pour ça faut déclarer un string et faire :
   machaine='';
   writeln (monfichier, mastring);

Pour aller à la fin du fichier je ne sais pas.. Je sais comment savoir si on est à la  fin (avec eof) mais c'est tout.

Vala ^^

BIz [;)]
mercredi 10 janvier 2007 à 15:20:21 | Re : retour chariot sur dernière ligne d'un fichier

cirec

Membre Club Administrateur CodeS-SourceS
Salut,

pourquoi ne pas utiliser un TStringList ?

Ex:
procedure TfrmMain.Button1Click(Sender: TObject);
Var  SL : TStringList;
        Txt : String;
Begin
  {On crée la StringList}
  SL := TStringList.Create;
  With SL do Try
    {On charge le texte depuis le fichier}
    LoadFromFile('Nom_Du_Fichier_Texte.txt');
    {Récupère la dernièrre ligne dans Txt}
    Txt := Strings[Count - 1];
    {Ajoute une ligne Vide à la fin du Fichier si elle n'éxiste pas}
    If Txt <> EmptyStr Then Begin
      Add('');
      {Il faut sauvegarder les modifications}
      SaveToFile('Nom_Du_Fichier_Texte.txt');
    End;
  Finally
   {Ne jamais oublier de liberer}
    Free;
  End;
End;


 
@+
Cirec

mercredi 10 janvier 2007 à 15:25:52 | Re : retour chariot sur dernière ligne d'un fichier

Jean_Jean

 bj ndsaerith

Pour aller en fin de fichier texte : SeekEof(F);
Les instruction de fichiers sont accompagnées d'exemple en général : => F1
Pour ajouter un retour ligne, tu peux ajouter le code ascii #13#e d'une ligne10 (ou chr(13)+chr(10)); // retour ligne + descente d'1 ligne

A+
mercredi 10 janvier 2007 à 15:26:56 | Re : retour chariot sur dernière ligne d'un fichier

Jean_Jean

Cirec a été plus rapide
avec toujours de bonnes idées
mercredi 10 janvier 2007 à 15:57:01 | Re : retour chariot sur dernière ligne d'un fichier

furax13

De temps en temps, le fichier que je dois traiter est de la sorte :
La dernière ligne n'a pas de retour chariot.
Avec le code de cirec, que j'ai testé, dans tous les cas, il me rajoute une ligne blanche.


 #Creation date;
02/01/2007 15:28:26;
#Optimization mode (Stack=1 ou Coil=2);
2;
#Annealing number;Annealing Code;Base type;
J2c164t104;104dssc;bremen_1_4;
#Ordered list of the coils in the stack
#number of coils;
2;
#Coil number;Weight(Kg);External Diameter(mm);Width(mm);Thickness(mm);Annealing Code;
724738x000; 33680;1845;1807;0.910;104dssc;
724769x000; 33660;1766;19970;0.840;104dssc;
#Number of measurement points;
0;
#Ordered list of the measurement points;
#Time(s);Regulation sensor T°(°C);Safety sensor T° (°C);Fuel gas flow(Nm3/h);Air flow(Nm3/h);
mercredi 10 janvier 2007 à 16:07:29 | Re : retour chariot sur dernière ligne d'un fichier

japee

Membre Club Administrateur CodeS-SourceS
Salut,

J'avais fait ce code qui ressemble fort à la méthode à Cirec, si ça peut résoudre :

procedure TForm1.Button1Click(Sender: TObject);
const nomFichierRecuit = 'Essai.txt';
var
  List: TStrings;
begin
  List := TStringList.Create;
  with List do
  try
    LoadFromFile(nomFichierRecuit);
    List[Count -1] := List[Count -1] + #13#10;
    SaveToFile(nomFichierRecuit);
  finally
    Free;
  end;
end;


Ca va mieux comme ça ?

Bonne prog'

japee
mercredi 10 janvier 2007 à 16:23:03 | Re : retour chariot sur dernière ligne d'un fichier

cirec

Membre Club Administrateur CodeS-SourceS
Réponse acceptée !

oui effectivement la StringList ajoute automatiquement
un retour chariot au moment de la sauvegarde

je ne le savais même pas !!!
je viens de découvrir la chose ... Alors Bug ou pas Bug

Enfin toujours est il ... tu corriges comme suit et ça fonctionne (j'ai testé cette fois  )

procedure TfrmMain.Button1Click(Sender: TObject);
Var  SL : TStringList;
        Txt : String;
Begin
  {On crée la StringList}
  SL := TStringList.Create;
  With SL do Try
    {On charge le texte depuis le fichier}
    LoadFromFile('Nom_Du_Fichier_Texte.txt');
    {Récupère la dernièrre ligne dans Txt}
    Txt := Strings[Count - 1];
    {Ajoute une ligne Vide à la fin du Fichier si elle n'éxiste pas}
    If Txt <> EmptyStr Then
      SaveToFile('Nom_Du_Fichier_Texte.txt');
  Finally
   {Ne jamais oublier de liberer}
    Free;
  End;
End;




 
@+
Cirec

mercredi 10 janvier 2007 à 16:31:10 | Re : retour chariot sur dernière ligne d'un fichier

furax13

avec ton code, cela me rajoute systématiquement une ligne blanche que j'ai un retour chariot ou non dans le fichier.

mercredi 10 janvier 2007 à 16:35:18 | Re : retour chariot sur dernière ligne d'un fichier

cirec

Membre Club Administrateur CodeS-SourceS
Argh...
j'avais pas actualisé la page avant de poster

@Japee  Normalement ta méthode ajoute à tous les coups deux retours chariot si il n'y en a pas en fin de fichier
et un dans le cas contraire.

En fait les deux lignes suivantes ne sont pas néscéssaires :
    Txt := Strings[Count - 1];
    If Txt <> EmptyStr Then

Mais ça évite de faire un Save directement après un Load
et surtout de ne pas sauvegarder si ce n'est pas utile

@ Furax13 :
Avec le dernier code ?
Avec le premier je suis d'accord mais pas le deuxième,
Je viens de faire les testes et ça fonctionne très bien chez moi !!!

 
@+
Cirec


1 2

Cette discussion est classée dans : fichier, ligne, dernière, retour, chariot


Répondre à ce message

Sujets en rapport avec ce message

inserer retour chariot [ par exyacc ] bonjour,j'ai un tres gros fichier texte et tout le fichier et sur une ligne... donc j'arrive pas a l'importer avec access ni excel, je voudrais donc a Lire une ligne d'un fichier [ par tony_73 ] Bonjour,Voila j'aimerais ouvrir un fichier et lire juste la premiere ligne délimité par des crochets. mais apparemment il est impossible en faisant un Comment supprimer une ligne dans un fichier Text? [ par NicoIRIS ] Bonjour à tous,Voici mon petit problème... Je souhaiterai savoir s'il éxiste une méthode qui permmettrait de supprimer une ligne dans un fichier Text. Les fichiers [ par Cormz0r ] Bonjour,Je travaille sur un projet personnel en ce moment qui implique la gestion de fichier.J'ai créer des element de type "Record" que je sauve dans Insérer retour chariot [ par Roje ] Voila, j'ai un fichier texte en entrée écrit sur une seule ligne. J'aimerais insérer un retour chariot tous les 10 caractères. Je suis sûr que c'est t retour à la ligne [ par manu00 ] Vraiment un GRAND merci Amadeus, ca me sauve la vie.Par contre, j'ai encore un pépin.Comme mon truc est sur 2 ligne, j'ai un retour a la ligne que j'a NB Ligne dans un fichier texte [ par ProGMaN007 ] salut, comment connaître le nombre de ligne dans un fichier txt ? Help 2 ! Ajout de retour chariot ! [ par toto ] Salut,Comment faire pour ajouter un retour chariot qd je veux dans un memo SVP ?MErci !toto Ouverture, lecture d'un fichier en mode binaire [ par SMoG ] YoOOooOOoooooo la dedans :)bon voila, j'aimerais ouvrir et lire un fichier en mode binaire ligne par ligne, mais j'ai trouvé que des méthodes qui lise fichier d'aide en ligne [ par bdv ] quelqu'un a t il déja réalisé une aide en lignequelque soit sa forme toutes idées, suggestions, ou sources bienvenuesthanks


Nos sponsors


Sondage...

Comparez les prix


HTC Magic

Entre 429€ et 429€

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,250 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales