Título: Como sobreescribir un txt en visual basic .net
Publicado por: arts en 27 Mayo 2013, 17:26 pm
Muy buenas a todos. Quería saber como modificar una línea de un txt en visual basic .net. Hasta ahora logro guardar los datos de mis cajas de texto en un array, ese array está por líneas y mando la linea a una función que se coloca en el archivo o eso creo sobre la línea a modificar sobre la cual según tengo entendido debería sobreescribir dicha línea. Sin embargo me lo escribe al final del txt y no sobre la línea que le paso. Linea_ac es la linea que quiero cambiar. Private Sub Sobreescribir_linea_en_Archivo(ByVal linea_ac As Short)
Using ARCHIVO As New System.IO.StreamWriter("F:\alumnos.txt", True) 'cambiar la ruta si es necesario For J = 0 To 8 If J = 8 Then ARCHIVO.Write(TB_A(linea_ac, J)) Else ARCHIVO.Write(TB_A(linea_ac, J) & ";") End If Next End Using
End Sub A ver si alguien me dice que me falta o como arreglar esto ;)
Título: Re: Como sobreescribir un txt en visual basic .net
Publicado por: Eleкtro en 27 Mayo 2013, 20:08 pm
Aquí tienes mi versión: #Region " Replace TextFile Line " ' [ Replace TextFile Line Function ] ' ' // By Elektro H@cker ' ' Examples : ' Replace_TextFile_Line("C:\File.txt", 1, "Hello world!") ' Replace_TextFile_Line("C:\File.txt", 3, True) ' If Replace_TextFile_Line("C:\File.txt", 5, "Elektro H@cker") Then ... Private Function Replace_TextFile_Line(ByVal Text_File As String, _ ByVal Line_Number As Int64, _ ByVal New_Text As Object) As Boolean Line_Number -= 1 : If Line_Number < 0 _ Then Throw New Exception("Line Number can't be a negative value") Try Dim Lines_Array () As String = IO. File. ReadAllLines(Text_File ) Lines_Array(Line_Number) = New_Text IO. File. WriteAllLines(Text_File, Lines_Array ) Return True Catch ex As Exception MsgBox(ex.Message) Return False End Try End Function #End Region
Saludos.
|