Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

Acelerar la lectura de un archivo texto cuando su tamaño es muy grande.
#11

(09-05-2021, 13:32)tincho escribió:  Shell: seria interesante que pases el link del archivo de texto que usaste para hacer las pruebas así podemos probar cada uno en la configuración local.

No tengo inconveniente. Me parece mejo así. Incluso se pude usar como ejercicio para programar. Estuve probando otras cosas.

Subo el archivo a Dropbox para compartirlo con la comunidad y como solo es un archivo de texto aunque contiene todo el árbol de directorios del lugar,
si un usuario quiere bajar algo de ahí, tendrá que buscarlo por la red y es cosa del usuario, con este archivo no se va a poder bajar otros contenidos,
solo va a conocer lo que existe pero no contiene enlaces. ( Tampoco es que sea tan difícil pero es cosa de cada uno ), mi idea
es compartir para aprender a mejorar y conocer.

Archivo filelist.zip para pruebas.

Recordar. Archivo comprimido 20M, descomprimido 150M.

Me gustaría comentar esto y a ver que me decís.

Estuve intentando verlo desde el lenguaje Python ( que hace mucho tiempo que no toco ).
Me dio error de lectura por problema de "codificación" del texto.

Fui a la consola de Linux y use el comando file para saber algo del archivo, su respuesta fue esta:
Cita:filelist.txt: Non-ISO extended-ASCII text

Para poder leerlo desde Python3 usé algo como esto:

Python
  1. #!/usr/bin/env python3
  2.  
  3. def main():
  4.     ruta = '/home/usuario/Descargas/filelist.txt'
  5.     with open(ruta, mode='r', encoding='latin-1') as archivo:
  6.         print (archivo.read())
  7.  
  8. if __name__=='__main__': main()



Según parece la codificación "ISO-8859-1" es igual a "latin1", me funcionó igual  especificando uno de estos dos.
Se supone que cuando leemos un archivo "deberíamos" especificar como está codificado ya que por defecto
nuestro sistema posiblemente sea "utf-8". (Esto debería aplicarse a cualquier lenguaje).

Ahora voy a Gambas. Nuestra instrucción File.Load, no aparenta una necesidad de especificar la codifcación del archivo
para cargarlo. Cuando muestro desde Gambas (salida a la terminal) ó un archivo ejecutable que ejecuto en la terminal,
me muestra todo el contenido del archivo línea por línea. Pero tengo problemas de mostrarlo en la consola de Gambas.
¿ Por ?.

Supongamos que ejecuto este programa en Gambas.

GAMBAS
  1. Public Sub Ejemplo1()
  2.  
  3.   Dim ruta As String
  4.   Dim texto As String
  5.   Dim linea As String
  6.   Dim t As Float
  7.  
  8.   ruta = User.Home &/ "Descargas/filelist.txt"
  9.   t = Timer
  10.  
  11.   texto = File.Load(ruta)
  12.   For Each linea In Split(texto, "\n")
  13.     Print linea
  14.   Next
  15.   Print "Tiempo de carga y muestra: " & Format(Timer - t, "0.#####" & "s")
  16.  
  17.   Print "Error: " & Error.Text
  18.  



Lo hice de esta forma para dar a conocer los problemas de la codificación de este archivo. Recordar que es un archivo de texto
pero que para leerse en un Amiga. Que en un Pc también lo leemos.

Continuo. Si muestro el texto de la consola de Gambas, veremos que el carácter de final aparece un carácter extraño, parece un "castillo".

[Imagen: VEqgypO.png]

Es muy probable que Gambas3 no acabe de mostrar todo el contenido en la consola por estos caracteres finales.
Entonces como ahora conocemos que hay una codificación, cambiemos la línea que muestra "linea" por esto.

GAMBAS
  1.  Print Conv(linea, "ISO-8859-1", "utf-8") 



Ya no mostrará ese "castillo". Smile

Hay momentos que deja de mostrarse el contenido en la consola, lo que hago es con el ratón subir o bajar con el cursor la ventana
donde se muestra el contenido de la consola de Gambas y ese vuelve a mostrarse, incluso ya llega hasta el final.

¿ Se satura la consola de Gambas ?.

Podemos usar la opción del menú de Gambas en Depuración, usar emulador de terminal, pero esto nos hace olvidar
la posibilidad de que el archivo pueda estar codificado. Lo muestra sin pensárselo.

Recordar que el pc se calienta cuando trabaja con un archivo largo si lo muestras línea a línea.

Esto es lo que me muestra al final de la ejecución, llegando correctamente al final del archivo.
Cita:08/05/18|6318789|Commodore Amiga - Latest Public DATS Combined (TOSEC-v2018-07-27).zip

Tiempo de carga y muestra: 19,56704s

Saludos

"El lobo siempre será malo si sólo escuchamos a Caperucita.". El lobo.
    ¡Gracias!


Mensajes en este tema
Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por Shell - 06-05-2021, 13:58
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por tincho - 06-05-2021, 15:35
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por jguardon - 06-05-2021, 20:31
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por tincho - 06-05-2021, 20:42
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por jguardon - 06-05-2021, 21:00
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por tincho - 06-05-2021, 21:30
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por Shell - 06-05-2021, 22:43
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por tincho - 07-05-2021, 00:12
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por Shell - 08-05-2021, 11:57
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por tincho - 09-05-2021, 13:32
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por Shell - 10-05-2021, 12:57
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por Shell - 10-05-2021, 14:38
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por tincho - 13-05-2021, 22:25
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por Shell - 13-05-2021, 23:34
RE: Acelerar la lectura de un archivo texto cuando su tamaño es muy grande. - por tincho - 14-05-2021, 01:14

Posibles temas similares…
Tema / Autor Respuestas Vistas Último mensaje
Último mensaje por tincho
08-10-2020, 23:15

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)