Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > Lazarus, FreePascal, Kylix, etc.
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-01-2009
ayozito ayozito is offline
Registrado
 
Registrado: ene 2009
Posts: 2
Poder: 0
ayozito Va por buen camino
Ayuda lectura archivos de texto en FreePascal

Buenas! Tengo una duda a la hora de leer un archivo de texto en FP.

El archivo es el siguiente:

<pre><p>8
5 4
8 5
5 6
6 9
7 7
2 2
10 7
6 3
</p></pre>

El tema está en que tengo que hacer un juego como el de las muñecas rusas ese, de meter una dentro de otra. Los numeros son las dimensiones.

Entonces yo tenia pensado en hacer un array de 1 a 8 de tipo record que seria ancho y alto : string.

Y la duda es..como puedo dividir cada linea para poder hacer eso? pq lo unico que consigo es que me ponga toda la linea en ancho, y en alto nada. Vamos que poder poner Ancho = 5, Alto = 4
Responder Con Cita
  #2  
Antiguo 03-01-2009
Avatar de xEsk
[xEsk] xEsk is offline
Miembro Premium
 
Registrado: feb 2006
Posts: 454
Poder: 19
xEsk Va por buen camino
Hola, he dado por hecho que los tags HTML son un error xD

Te he escrito esta función que te extraerá la inforamción, fila por fila:

Código Delphi [-]
procedure TForm1.ParsearInformacion(Info: String);
var
  n: Integer;
  Ancho,
  Alto: String;

begin
  with TStringList.Create do
    try
      Text:=Info;
      // vamos linea por linea
      for n:=0 to Count - 1 do
        begin
          // obtenemos el ancho (el primer valor de la fila)
          Ancho:=Copy(Strings[n], 1, Pos(' ', Strings[n]) - 1);
          // obtenemos el alto (el segundo valor de la fila)
          Alto:=Copy(Strings[n], Length(Ancho) + 2, Length(Strings[n]));
        end;
    finally
      Free;
    end;
end;

Como puedes ver, tienes que hacer algunos cambios para que guarde la información donde mas te guste, por ahora he creado dos variables String locales.

Este código funciona tanto en Delphi como con Lazzarus.

Saludos.
Responder Con Cita
  #3  
Antiguo 03-01-2009
ayozito ayozito is offline
Registrado
 
Registrado: ene 2009
Posts: 2
Poder: 0
ayozito Va por buen camino
mmm okey mañana pruebo que tengo que estarme pasando a Ubuntu y no me apetece xD.

De todas maneras tendre que modificarlo pues lo necesito en FreePascal, si veo que no rula, ya te aviso xD gracias!
Responder Con Cita
  #4  
Antiguo 04-01-2009
Avatar de xEsk
[xEsk] xEsk is offline
Miembro Premium
 
Registrado: feb 2006
Posts: 454
Poder: 19
xEsk Va por buen camino
Este código lo he escrito en Delphi, pero luego lo he probado con Lazarus (0.9.27).

Los cambios que puedas realizar al código, no tienen a ver con que lo necesites para FreePascal o Delphi, ya que Lazarus compila usando FreePascal... :P

Saludos.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Delphi 2006 .net Asp Lectura Archivos ASAPLTDA .NET 4 01-08-2007 01:48:10
Ayuda con Archivos de Texto!! Ariatna Varios 8 03-02-2005 00:21:04
Lectura Archivos Creados con Cobol RM ASAPLTDA Conexión con bases de datos 1 20-01-2005 11:26:08
Lectura de teclado sin campo de texto floren PHP 9 22-09-2004 09:25:22
Error en lectura logs texto alejandrowa Varios 6 03-06-2003 20:31:28


La franja horaria es GMT +2. Ahora son las 15:10:22.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi