Lo que pretendo hacer es lo siguiente ya tengo un listbox con los datos, deseo al ejecutar los datos de listbox1 que escribí de forma manual, al ejecutar el programa.
1 se guarden en un txt
2 desde luego aqui es donde tengo el problema de cerrar el txt para volver abrirlo, me aparece el error en un dialogo (El proceso no puede obtener acceso al archivo 'E:\12.txt' por que esta siendo utilizado en otro proceso.)
3 cargar los datos que se guardaron en el txt cargalos en un listbox2
no entiendo mucho los códigos.
End Class
Imports System.IO
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim oSW As New StreamWriter("D:\12.txt")
Dim i As Integer
For i = 0 To ListBox1.Items.Count - 1
Dim Linea = ListBox1.Items(i).ToString()
oSW.WriteLine(Linea)
oSW.Flush()
Next
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''CARGAR TXT
Dim Archivo As System.IO.FileInfo = New FileInfo("D:\12.txt")
Me.ListBox2.Items.Clear()
Try
Dim abrir As StreamReader = Archivo.OpenText
Dim linea As String
Do While abrir.Peek() > 0
linea = abrir.ReadLine()
Me.ListBox1.Items.Add(linea)
Loop
abrir.Close()
Catch ex As SystemException
MsgBox(ex.Message, MsgBoxStyle.OkOnly, "ERROR")
End Try
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
End Sub
Cita de: cael1011 en 25 Septiembre 2016, 06:14 AMaqui es donde tengo el problema de cerrar el txt para volver abrirlo, me aparece el error en un dialogo (El proceso no puede obtener acceso al archivo 'E:\12.txt' por que esta siendo utilizado en otro proceso.)
Cuando termines de manipular el archivo debes cerrar el
stream llamando al método
StreamWriter.Close()/
StreamWriter.Dispose():
Dim oSW As New StreamWriter(...)
For ...
oSW.WriteLine(...)
...
Next
oSW.Close()
Saludos