Visual Basic.NET - Leer fichero plano linea por linea

 
Vista:

Leer fichero plano linea por linea

Publicado por Marta (49 intervenciones) el 18/07/2006 16:11:52
Buenas tardes,

Quiero leer un fichero plano txt, registro por registro (linea por linea). Es decir, el contenido de mi fichero es de este tipo:

2006122325451544874987
2005235487784842141414
2004649878978787845144

quiero ir leyendo linea por linea (y luego voy leyendo de cada linea los datos que me interesen).

Primero coger la linea: 2006122325451544874987 y tratarla, luego la siguiente y así con todas.

¿Cómo puedo hacerlo?

Si utilizo esto:

Dim sw1 As New StreamReader(nombreFichero, False)
strcadena = sw1.ReadLine

solo me coge la primera linea...

Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Leer fichero plano linea por linea

Publicado por Javi RM (12 intervenciones) el 19/07/2006 08:15:57
Prueba con esto.

' Apuntador libre a archivo
Dim Apunt As Integer = FreeFile()
' Variable donde guardamos cada línea de texto
Dim Texto As String

' Abrimos el archivo y lo recorremos hasta el final línea por línea
FileOpen(Apunt, "C:\txt.txt", OpenMode.Input, OpenAccess.Read)
Do While Not EOF(Apunt)
' Leemos la línea de texto del archivo
Texto = LineInput(Apunt)
' Aqui ya puedes hacer el tratamiento que desees con la línea de texto
'.....
Loop
' Cerramos el archivo
FileClose(Apunt)

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer fichero plano linea por linea

Publicado por thessen (298 intervenciones) el 19/07/2006 09:10:26
Hola, prueba con:

Dim sw1 As New StreamReader(nombreFichero, False)
Dim sContenido as string

sContenido = sw1.ReadToEnd ' Lees el contenido completo del fichero

' Si quieres tener separadas cada una de las lineas...
Dim sLineas () as string = sContenido.Split (vbcrlf)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer fichero plano linea por linea

Publicado por Marta (49 intervenciones) el 19/07/2006 10:09:25
Gracias, con esto me vale.

Pero ahora tengo otro problema:

La primera linea me la lee bien, pero las siguientes tienen un intro por delante. Hago un replace de ese intro por un espacio vacio (o por cualquier letra para probar) y no me lo hace.

'Controlar retorno de carro (enter)
Dim c As Char
Dim retornoCarro As String
c = New Char
c = Chr(13)
retornoCarro = Char.ToString(c)
Dim c1 As Char
c1 = New Char
c1 = Chr(10)
retornoCarro = Char.ToString(c) & Char.ToString(c1)

Dim sLineas() As String = strcadena.Split(vbCrLf)

sLineas(h) = Replace(sLineas(h), retornoCarro, "w")

He puesto "w" para probar, pero no lo hace.

Probando esto tampoco me funciona:
sLineas(h) = Replace(sLineas(h), vbCrLf, "w")

¿cómo puedo quitar ese intro?

Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer fichero plano linea por linea

Publicado por thessen (298 intervenciones) el 19/07/2006 10:19:28
Mmmmmmmmm, si tienen un Intro delante... no seria una nueva linea?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer fichero plano linea por linea

Publicado por Marta (49 intervenciones) el 19/07/2006 10:24:43
Sí, es una nueva linea, pero al leerla me lee el intro como primera posición, y yo no quiero eso.

¿te podría mandar un pantallazo a tu correo para que lo vieras mejor? por si no me he explicado bien...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer fichero plano linea por linea

Publicado por thessen (298 intervenciones) el 19/07/2006 10:27:58
Claro, ningun problema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Leer fichero plano linea por linea

Publicado por oscar (13 intervenciones) el 21/07/2006 21:29:35
Ese intro lo puedes quitar con la prpiedad trim en tu variable tipo string

VariableString = LineaArchivo.Trim

con eso basta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar