Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => 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 (vb) [Seleccionar]
open ruta_archivo for binary as #1
dim todo as string
todo = space (LOF(1))
get #1,,todo
close #1

dim lineas as variant
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
Cita de: E0N en 24 Agosto 2007, 00:14 AM

Código (vb) [Seleccionar]
open ruta_archivo for binary as #1
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

CitarEl 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