Foros del Web » Programación para mayores de 30 ;) » .NET »

Leer archivo de texto [SOLUCIONADO]

Estas en el tema de Leer archivo de texto [SOLUCIONADO] en el foro de .NET en Foros del Web. Hola, estoy intentando leer un archvio de texto que contiene campos delimitados por un cárcater: "#". La finalidad es llenar un dataset con los campos ...
  #1 (permalink)  
Antiguo 05/11/2006, 14:19
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 7 meses
Puntos: 156
Leer archivo de texto [SOLUCIONADO]

Hola,

estoy intentando leer un archvio de texto que contiene campos delimitados por un cárcater: "#". La finalidad es llenar un dataset con los campos del archivo de texto.

He probado varias cosas pero no me lee todo el archivo.

¿Alguien tiene alguna idea de como se hace?

Otra solución que me valdría es importar los datos del archivo de texto a una tabla Access. Lo he intentado con el código que hay más abajo, pero me coge cada fila como si fuera 1 sólo campo, y no es así ya que cada fila del txt corresponde a 7 campos:

Cita:
Try
Dim conn As New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLED B.4.0;Data Source=c:\prueba.mdb")
Dim cmd As New OleDb.OleDbCommand("SELECT * INTO [import] FROM [Text;Database=c:\;HDR=Yes;FMT=Delimited].[miArchivo.txt]", conn)
conn.Open()
cmd.ExecuteNonQuery()
conn.Close()

Catch ex As Exception
MsgBox(ex.ToString)
End Try
¿Hay alguna forma de indicarle que los campos están delimitados por x carácter? Ya que con FMT=Delimited no me sirve.

SAludos

Última edición por freegirl; 06/11/2006 a las 04:23
  #2 (permalink)  
Antiguo 06/11/2006, 04:21
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 7 meses
Puntos: 156
Bueno ya lo solucioné. Ahora aquí no tengo el código, pero ya pondré la solución.

saludos
  #3 (permalink)  
Antiguo 06/11/2006, 04:29
Avatar de Korku  
Fecha de Ingreso: noviembre-2003
Ubicación: En un lugar oscuro...
Mensajes: 688
Antigüedad: 20 años, 5 meses
Puntos: 5
Hola freegirl,

Bueno, yo normalmente lo que hago para importar datos de un fichero txt a una tabla es usar el objeto StreamReader ... te doy un ejemplo:

Código:
        Dim path As String = "C:\prueba.txt"
        Dim sr As StreamReader = File.OpenText(path)

        Dim cadenaSQL As SqlCeCommand = conn.CreateCommand
        Dim linea As String

        Do
            Try

                linea = sr.ReadLine()

                If Not linea = "" Or Not linea = Nothing Then

                    cadenaSQL.CommandText = "INSERT INTO prueba(p_codigo,p_nombre) " & _
                    "VALUES " & _
                    "('" & Trim(Mid(linea, 1, 4)) & "'," & _
                    "" & Replace(Trim(Mid(linea, 5, 40)), ",", ".") & "" & _
                    ")"

                    cadenaSQL.ExecuteNonQuery()

                End If

            Catch ex As SqlCeException
                MsgBox(ex.Message)
                Exit Sub
            End Try

        Loop Until linea Is Nothing

        sr.Close()
        cadenaSQL.Dispose()

        sr = Nothing
        cadenaSQL = Nothing
Espero que te sirva de algo,

Saludos
__________________
Carpe diem quam minimum credula postero.


http://www.programador-freelance.es
  #4 (permalink)  
Antiguo 06/11/2006, 04:31
Avatar de Korku  
Fecha de Ingreso: noviembre-2003
Ubicación: En un lugar oscuro...
Mensajes: 688
Antigüedad: 20 años, 5 meses
Puntos: 5
Bueno, demasiado tarde jejeje. Pues nada, me alegro que hayas encontrado la solución :)

Saludos
__________________
Carpe diem quam minimum credula postero.


http://www.programador-freelance.es
  #5 (permalink)  
Antiguo 16/09/2010, 09:31
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Leer archivo de texto [SOLUCIONADO]

@freegirl Un favor podrias poner tu codigo???

gracias!°!!
  #6 (permalink)  
Antiguo 16/09/2010, 12:55
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 7 meses
Puntos: 156
Respuesta: Leer archivo de texto [SOLUCIONADO]

vete a saber dónde está el código ese jajaj. Es un post del año 2006!!

Y el código que ha posteado korku no te sirve?
__________________
Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:24.