Ver Mensaje Individual
  #11  
Antiguo 11-02-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Reputación: 25
Delphius Va camino a la fama
El ejemplo que te paso aquí ilustra el uso de un TStringList. Lo primero que se hace es crear el objeto y abrir el archivo.
Con el button1 se van ingresando las lineas. Siempre se van ingresando al final del archivo.
Con el boton2 das por finalizada la operación (simplemente guarda el archivo y lo muestra. se puede seguir ingresando sin problemas).

Y cuando se cierra la aplicación se libera la memoria que ocupa el objeto.

El archivo que se consigue tiene esta forma:

Cita:
# Tarjeta numero: nro2
Dato del bloque = "dato2
# Tarjeta numero: nro1
Dato del bloque = "dato1
Como notarás, primero se ingresaron las lineas nro1 y dato1 y seguidamente nro2 y dato2.

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Edit1: TEdit;
    Edit2: TEdit;
    ListBox1: TListBox;
    Button2: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  Archivo: TStringList;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
   // Creamos el TStringList
   Archivo := TStringList.Create;

   // Abrimos el archivo...
   Archivo.LoadFromFile('C:\Documents and Settings\Marcelo\Escritorio\archivo.txt');
end;

procedure TForm1.Button1Click(Sender: TObject);
var LineaTarjeta, LineaBloque: string;
begin
   // construimos las lineas...
   LineaTarjeta := '# Tarjeta numero:  ' + Edit1.Text;
   LineaBloque := 'Dato del bloque = "' + Edit2.Text;

   // insertamos las lineas en el StringList
   // siempre van desde el comienzo del archivo
   Archivo.Insert(0,LineaTarjeta);
   Archivo.Insert(1,LineaBloque);

   // limpiamos los edits
   Edit1.Text := '';
   Edit2.Text := '';
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  // aqui guardamos el archivo
  Archivo.SaveToFile('C:\Documents and Settings\Marcelo\Escritorio\archivo.txt');
  ListBox1.Items.Assign(Archivo); 
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  // aqui destruimos el objeto
  Archivo.Free;
end;

end.

¿Es esto más o menos lo que deseas conseguir?

Cuando yo decía que aportaras detalles me refería a que profundices sobre el tema, y que expusieras más código del que inicialmente mostraste.
Si haz estado practicando con el TStringList, sería oportuno que expusieras tus resultados.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita