Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-09-2003
shaktale shaktale is offline
Miembro
 
Registrado: may 2003
Ubicación: Euskal Herria
Posts: 39
Poder: 0
shaktale Va por buen camino
Velocidad de acceso a un TRichEdit

Saludos a todos,

Tengo que acceder muchas veces a la información de un fichero de texto que puede ser bastante grande (las pruebas las estoy haciendo con unas 10000 lineas pero puede ser bastante mayor).

Para agilizar el acceso lo vuelco a un TRichEdit.

El problema que tengo es que (creo que) tarda más en acceder a las líneas que tienen un índice mayor. Es decir invierte más tiempo en acceder a RichEdtOut.Lines[10000] que a RichEdtOut.Lines[1], de forma que cuando tengo que acceder a las últimas líneas se relentiza mucho el proceso.

¿Alguien sabe a que se puede deber esto y alguna forma de solucionarlo?

¿De qué otra forma se puede manejar el acceso a un fichero de texto lo más rapidamente posible?

Gracias
__________________
Siempre Hay Alguien Ke Te Amarga La Existencia
Soziedad Alkoholika
Responder Con Cita
  #2  
Antiguo 19-09-2003
shaktale shaktale is offline
Miembro
 
Registrado: may 2003
Ubicación: Euskal Herria
Posts: 39
Poder: 0
shaktale Va por buen camino
De hecho con esta pequeña prueba que consiste en la lectura de las 200 primeras lineas y de las 200 lineas a partir de la 9000 me salen grandes diferencias: cuando leo las primeras lineas tarda del orden de 60ms, mientras q leyendo las ultimas unos 400.

Prueba:

Código:
  t:=GetTickCount;
  for i:=1 to 200 do
    label2.caption:=RichEdit1.Lines[i];
  label1.caption:=FloatToStr(GetTickCount-t);

  t:=GetTickCount;
  for i:=9001 to 9200 do
  label4.caption:=RichEdit1.Lines[i];
  label3.caption:=FloatToStr(GetTickCount-t);
__________________
Siempre Hay Alguien Ke Te Amarga La Existencia
Soziedad Alkoholika
Responder Con Cita
  #3  
Antiguo 19-09-2003
shaktale shaktale is offline
Miembro
 
Registrado: may 2003
Ubicación: Euskal Herria
Posts: 39
Poder: 0
shaktale Va por buen camino
Hola soy yo de nuevo

He encontrado una solución bastante buena a mi problema lo posteo por si puede servir a alguien.

La solución es tan simple como utilizar un TMemo en lugar de un TRichEdit, con esto he conseguido en la pruba anterior velocidades similares en ambos casos que rondan los 40-50 ms.

De todas formas ahora me han surgido nuevas dudas

gracias por todo

un saludo
__________________
Siempre Hay Alguien Ke Te Amarga La Existencia
Soziedad Alkoholika
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


La franja horaria es GMT +2. Ahora son las 12:16:32.


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