begin process at 2012 02 10 05:36:26
  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

Membre Club
 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

Membre Club
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 Généré un fichier txt [ par zer_you_19 ] Bonjour J'ai un fichier texte avec un format bien défini en nombre de caractères et d'espace dans chaque ligne, et j'ai besoin de généré le même fich 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 Afficher le contenu d'un fichier dans une liste en C [ par joujou1805 ] Bonjour à tous, Je cherche à lire le contenu d'un fichier .txt ligne par ligne,et enregistrer le contenue de ce fichier dans une liste chainée. Quelqu 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 Cellule StringGrid en mode édition [ par senv ] Bonjour, Je voudrais que le curseur pour éditer du texte vienne se placer dans une cellule spécifique d'un stringGrid après un clic sur un bouton et copier ligne d'un fichier excel à un autre [ par nabil351974 ] bonjour à tous, comment copier une ligne d'un fichier excel vers un autre fichier excel? merci. cordialement. NABIL1974 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


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
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 : 3,104 sec (4)

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