Título: [SOLUCIONADO] Guardar listbox en un txt
Publicado por: .:Dione:. en 10 Septiembre 2009, 14:07 pm
OS cuento el problema, que será facil de resolver, pero no lo veo. Tengo mi programa que hace una lista de las carpetas de un directorio y lo guarda en un listbox, hasta aquí todo bien, el problema llega cuando intento guardar el contenido del listbox en un txt. Os pongo el código y el contenido del txt. Option Explicit On Imports System.IO Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click For Each archivos As String In Directory.GetDirectories("c:\", "*.*", SearchOption.TopDirectoryOnly) ' extraer el nombre de la carpeta de la ruta completa archivos = archivos.Substring(archivos.LastIndexOf("\") + 1).ToString ' Agregar el valor ListBox1.Items.Add("C:\" & archivos.ToString) Next End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim oSW As New StreamWriter("C:\archivo_prueba.txt") Dim Linea = ListBox1.Items.ToString oSW.WriteLine(Linea) oSW.Flush() End Sub Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged End Sub End Class
Contenido del txt. System.Windows.Forms.ListBox+ObjectCollection
Espero que me podais ayudar.
Título: Re: Guardar listbox en un txt
Publicado por: Erik# en 10 Septiembre 2009, 14:39 pm
Esto es de C#, pero puede servirte: http://msdn.microsoft.com/es-es/library/8bh11f1k.aspx
Título: Re: Guardar listbox en un txt
Publicado por: Atrum en 10 Septiembre 2009, 15:58 pm
El problema esta aqui: Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim oSW As New StreamWriter("C:\archivo_prueba.txt") Dim Linea = ListBox1.Items.ToString 'El objeto ListBox1.Items es del tipo ListBoxObjectCollection y al convertirlo a cadena no obtienes el texto 'ya que ListBox1.Items es un arreglo de items oSW.WriteLine(Linea) oSW.Flush() End Sub
Cambialo por: Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click Dim oSW As New StreamWriter("C:\Users\dguatemala\archivo_prueba.txt") Dim i As Integer For i = 0 To ListBox1.Items.Count - 1 Dim Linea = ListBox1.Items(i).ToString() 'Asi obtienes cada elemento del arreglo y conviertes su valor a cadena oSW.WriteLine(Linea) oSW.Flush() Next End Sub
Eso, en teoria, te deberia funcionar como quieres, espero te sirva
Título: Re: Guardar listbox en un txt
Publicado por: .:Dione:. en 10 Septiembre 2009, 23:53 pm
Gracias, ese código ha funcionado perfectamente. Dentro de poco os volveré a molestar con mis preguntas jeje. Has pronto y muchas gracias.
|