Porblema al leer fichero de texto
Publicado por TI (11 intervenciones) el 16/11/2005 13:24:37
Hola a todos,
Tengo una aplicación que lee un fichero de texto dividido en columnas y lo graba en una base de datos. EL problema que tengo es que en aquellas lineas que llevan caracteres tales como ñ, º, ª, dichos caracteres no los lee, con lo que la longitud de la línea me varía y ya no puedo coger los campos por su longitud.
Ej: Si la línea fuera
MUÑOZ PEREZ JUAN
Al leer la linea cogería:
MUOZ PEREZ JUAN
Lo realizo de la siguiente manera:
Dim file As New System.IO.StreamReader(TxtRuta.Text)
Dim Linea As String
Linea = file.ReadLine()
While (Linea <> "")
Apellidos = Trim(Linea.Substring(0, 40))
Nombre = Trim(Linea.Substring(40, 15))
StrComandoSQL = "INSERT INTO ALTAS_ESTRELLA (Apellidos, Nombre) " _
& "VALUES('" & Apellidos & "', " _
& "'" & Nombre & "') "
Try
Conexion = New SqlClient.SqlConnection(ConexionStrSQL)
Conexion.Open()
Comando = New SqlClient.SqlCommand(StrComandoSQL, Conexion)
Comando.ExecuteNonQuery()
Comando.Dispose()
Conexion.Close()
Catch
'Error
End Try
End If
Linea = file.ReadLine()
End While
Alguien sabría a que se debe esto?. Quizas haya otra forma mejor de realizar este proceso, si es así agradecería algún ejemplo de como hacerlo.
Muchas gracias.
Tengo una aplicación que lee un fichero de texto dividido en columnas y lo graba en una base de datos. EL problema que tengo es que en aquellas lineas que llevan caracteres tales como ñ, º, ª, dichos caracteres no los lee, con lo que la longitud de la línea me varía y ya no puedo coger los campos por su longitud.
Ej: Si la línea fuera
MUÑOZ PEREZ JUAN
Al leer la linea cogería:
MUOZ PEREZ JUAN
Lo realizo de la siguiente manera:
Dim file As New System.IO.StreamReader(TxtRuta.Text)
Dim Linea As String
Linea = file.ReadLine()
While (Linea <> "")
Apellidos = Trim(Linea.Substring(0, 40))
Nombre = Trim(Linea.Substring(40, 15))
StrComandoSQL = "INSERT INTO ALTAS_ESTRELLA (Apellidos, Nombre) " _
& "VALUES('" & Apellidos & "', " _
& "'" & Nombre & "') "
Try
Conexion = New SqlClient.SqlConnection(ConexionStrSQL)
Conexion.Open()
Comando = New SqlClient.SqlCommand(StrComandoSQL, Conexion)
Comando.ExecuteNonQuery()
Comando.Dispose()
Conexion.Close()
Catch
'Error
End Try
End If
Linea = file.ReadLine()
End While
Alguien sabría a que se debe esto?. Quizas haya otra forma mejor de realizar este proceso, si es así agradecería algún ejemplo de como hacerlo.
Muchas gracias.
Valora esta pregunta


0