Ver Mensaje Individual
  #5  
Antiguo 26-08-2010
rrf rrf is offline
Miembro
 
Registrado: ago 2003
Ubicación: S/C Tenerife, España
Posts: 454
Reputación: 21
rrf Va por buen camino
Hola.

He mirado el archivo de ejemplo que adjuntas.

Me parece que es fácil leer los datos de ese archivo; aunque te llevará un tiempito hacer que todo salga bien.

No tengo ni idea de tus conocimientos, ni de la versión de Delphi que usas. Así que te comentaré lo que creo más importante.

Para leer el archivo puedes usar un ListBox, un Memo o un TStringList. Con LoadFromFile ('NombreArchivo.txt').

Luego utilizas Items (Lines si usas un Memo). Por ej. memo1.Lines [3]. Todo ello, sabiendo que se parte de el item nº 0, no del nº 1.

Por ej.: memo1.Lines.Count -1 te da el número de índice de la última línea del Memo.

Para recorrer todas las líneas del Memo, puedes usar:

Código Delphi [-]
For cc := 0 to memo1.Lines.Count -1 do
begin

  // Tu código

end ;

También podrías usar un While...do...
Código Delphi [-]
  cc := 0 ;
  while cc <= memo1.Lines.Count -1 do
  begin
    // Tu código
   
    cc := cc + 1 ; // ó 2 ó el valor que necesites.
  end;

cc es una variable integer.

Para localizar un tipo determinado de texto en una línea, usa la función Pos. Con ella podrás saber si existe un texto determinado dentro de una línea, y devuelve la posición en la que se encuetra ese texto.

Por ej., en el bucle for anterior, podrías ver si aparece el texto "VENTAS:" en la línea que está leyendo. Si aparece, devolverá un valor superior a 0:

Código Delphi [-]
  if pos ( 'VENTAS', Memo1.Lines [ cc ] ) > 0
    then ...

Para sacar partes del texto de una línea, usa la función COPY, que devuelve una parte del texto que comienza en una posición xx y que contiene yy caracteres. Ej:

Copy ( Memo1.Lines [ cc ], xx, yy ) ;

Combinando todo esto, seguro que puedes hacer muchas cosas.

Saludos.
Responder Con Cita