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

Archivo de Texto

Estas en el tema de Archivo de Texto en el foro de .NET en Foros del Web. Estimados hice lo siguiente para leer un archivo de texto con 2 columnas e insertarlas en una tabla..lo hace pero no me convence quizas halla ...
  #1 (permalink)  
Antiguo 03/07/2009, 15:06
 
Fecha de Ingreso: agosto-2008
Mensajes: 17
Antigüedad: 15 años, 9 meses
Puntos: 0
Archivo de Texto

Estimados hice lo siguiente para leer un archivo de texto con 2 columnas e insertarlas en una tabla..lo hace pero no me convence quizas halla algo mas simple.


Try
Dim lector As TextFieldParser
Dim linea As String()
Dim bandera As Integer
bandera = 1


Dim campo As String
lector = New TextFieldParser("d:codigos.txt")
lector.TextFieldType = FieldType.Delimited
lector.SetDelimiters(",")
While Not lector.EndOfData
Try
linea = lector.ReadFields()
While Not lector.EndOfData
Try
linea = lector.ReadFields()
For Each campo In linea
If bandera = 1 Then

Dim variable As String = "INSERT INTO pre_inventario(codigo)VALUES('" + campo + "')"
Dim insertar As New OleDbCommand(variable, cnn)
cnn.Open()
insertar.ExecuteNonQuery()
cnn.Close()
bandera = 2
paso = campo
ElseIf bandera = 2 Then

Dim variable As String = "UPDATE pre_inventario SET cantidad= " + campo + " WHERE codigo='" + paso + "'"
Dim insertar As New OleDbCommand(variable, cnn)
cnn.Open()
insertar.ExecuteNonQuery()
cnn.Close()
bandera = 1
End If

Next
Catch ex As MalformedLineException
MsgBox("Linea " & ex.Message)
End Try
End While
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End While
  #2 (permalink)  
Antiguo 03/07/2009, 15:19
 
Fecha de Ingreso: agosto-2008
Mensajes: 17
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Archivo de Texto

ya lo hice

linea = lector.ReadFields()
For Each campo In linea
If bandera = 1 Then
paso = campo
bandera = 2
ElseIf bandera = 2 Then
Dim variable As String = "INSERT INTO pre_inventario(codigo,cantidad)VALUES('" + paso + "'," + campo + ")"
Dim insertar As New OleDbCommand(variable, cnn)
cnn.Open()
insertar.ExecuteNonQuery()
cnn.Close()
bandera = 1
End If
  #3 (permalink)  
Antiguo 07/07/2009, 16:06
 
Fecha de Ingreso: junio-2008
Mensajes: 54
Antigüedad: 15 años, 10 meses
Puntos: 19
Respuesta: Archivo de Texto

Solo ten cuidado con la "Inyeccion de SQL" al utilizar el INSERT INTO, puesto que es una artimaña utilizada por quienes "atacan los programas".
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 17:17.