Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: elmaro en 23 Agosto 2007, 18:20 pm



Título: Leer archivo por lineas, y chr(10) ?
Publicado por: elmaro en 23 Agosto 2007, 18:20 pm
Bueno... cada tanto aparesco en esta parte del foro
y tengo una duda q no puedo resolver
tengo una aplicacion donde abro un archivo de texto separado por tabulaciones el cual lo leo linea a linea
el problema es que el archivo se guarda de una forma "especial" al ser creado y los saltos de lineas no son saltos de lineas :S

entonces cuando lo leo con la instruction Line Input me lee una linea q no es en verdad una linea :S

estos archivos usan como saltos de linea Chr(10) en lugar de Chr(13) + Chr(10) y no se como resolverlo.

si alguin sabe como puedo hacer para q el chr(10)  sea interpretado como salto de linea o alguna sugerencia,... todo es bienvenido.


graciassss
adios


Título: Re: Leer archivo por lineas, y chr(10) ?
Publicado por: APOKLIPTICO en 23 Agosto 2007, 19:19 pm
Te recomiendo que lo abras en modo binario y te pongas a leer caracter a caracter con la funcion get. Lo vas guardando en una variable y le pones una sentencia if para ver si el caracter que estas leyendo es = a chr(10). Cuando lo detectes, entonces lo que haya en la variable en el momento va a ser una linea...
Pero olvidate del tema de line input.
Saludos


Título: Re: Leer archivo por lineas, y chr(10) ?
Publicado por: ~~ en 24 Agosto 2007, 00:14 am
Pues te recomiendo lo q dice APOKLIPTICO, seria algo asi:

Código
  1. open ruta_archivo for binary as #1
  2. dim todo as string
  3. todo = space (LOF(1))
  4. get #1,,todo
  5. close #1
  6.  
  7. dim lineas as variant
  8. lines = split (todo, chr(10) 'Aki tienes q partir por el caracter correspondiente a la tabulacion, no se cual será...

Y ya esta, en lineas tendrias el archivo separado por lineas, lineas(0) contendrá la primera linea, lineas(1) la segunda....

1S4ludo


Título: Re: Leer archivo por lineas, y chr(10) ?
Publicado por: HaDeS, - en 24 Agosto 2007, 02:30 am

Código
  1. open ruta_archivo for binary as #1
  2. lines = split (todo, chr(10) 'Aki tienes q partir por el caracter correspondiente a la tabulacion, no se cual será...

Te falta un ")"
saludos


Título: Re: Leer archivo por lineas, y chr(10) ?
Publicado por: ~~ en 24 Agosto 2007, 14:42 pm
es q que escribí el code directamente en el foro, normal q algo me comiera xD


Título: Re: Leer archivo por lineas, y chr(10) ?
Publicado por: elmaro en 24 Agosto 2007, 15:08 pm
gracias por su colaboracion
con respecto a el codigo q escribistes, en el caso de q el archivo tuviera 3mil lineas lo soportaria?
nunca use tantos arrays

gracias again


Título: Re: Leer archivo por lineas, y chr(10) ?
Publicado por: elmaro en 24 Agosto 2007, 15:42 pm
bueno... estuve viendo y estoy probando cantidades
acabo de provar y tengo 32mil (TREINTA Y DOS MIL) lineas

voy a seguir agregando a ver q limite tengo en ese array

Editado:

acabo de sacar esto de la pagina de soporte de microsoft

Citar
El número máximo de elementos de una matriz está limitado por la cantidad de recursos disponibles de sistema. Mientras posiblemente podría utilizar una matriz con el valor máximo de 2147483648 de 32 bits, su programa se ejecutará sin memoria en Windows NT porque Windows NT 4.0 sólo admite 4 GB de memoria en un proceso único.

me saco la duda a mi, espro les sirva
y ahora repregunto, debo confiar en esa info?


Título: Re: Leer archivo por lineas, y chr(10) ?
Publicado por: ~~ en 24 Agosto 2007, 17:34 pm
Hombre, la da microsoft, asi q es fiable xD

Lo de los 4GB si es verdad, es lo maximo q se da a un proceso, eso si que los tengas (fisicamente)  ya es otra cosa