Bueno hola a todos como ya saben soy nuevo en esto de vn anteriormente utilisaba el 6.0 pero ahora utiliso el vb 2008
bueno mi duda es que cree un programa en la cual podias agragar cosas a un list box y en el puedes guardarlo en un archivo .txt la cual se guardan y automaticamente cuando inicias la aplicacion ontra ves esten hay pero el unico problema es que cuando lo abro me aparece lo siguiente:
un ejemplo
Introduci
http://google.com
al textbox y le di al boton aceptar se me agrega al listbox y automaticamente se gurda en el archivo txt
Cuando lo Abro nuevamente se me agrega algo al listbox junto al texto que introduje
http://google.com
Entonce quiero hacer de manera que no me aparezca el 
El code que tengo es mas o menos haci
if ListBox1.Text.Contains("") Then
(Que debo poner aqui para que se borre este texto y se quede el link??)
End If
Bueno por hay me quede no se hacer decir que se borre un texto seleccionado porfavor ayuda!!
eso debe ser la codificacion en la que estas guardando el archivo de texto, lo deberias guardar con UTF-8, pone el codigo de como guardas el txt
saludos.
Si amigo lo guardo con extensión txt pero que deberia hacer cambiarle el code a UFT-8 ???
Cita de: Brian1511 en 24 Octubre 2012, 02:41 AM
Bueno hola a todos como ya saben soy nuevo en esto de vn anteriormente utilisaba el 6.0 pero ahora utiliso el vb 2008
bueno mi duda es que cree un programa en la cual podias agragar cosas a un list box y en el puedes guardarlo en un archivo .txt la cual se guardan y automaticamente cuando inicias la aplicacion ontra ves esten hay pero el unico problema es que cuando lo abro me aparece lo siguiente:
un ejemplo
Introduci
http://google.com
al textbox y le di al boton aceptar se me agrega al listbox y automaticamente se gurda en el archivo txt
Cuando lo Abro nuevamente se me agrega algo al listbox junto al texto que introduje
http://google.com
Entonce quiero hacer de manera que no me aparezca el 
El code que tengo es mas o menos haci
if ListBox1.Text.Contains("") Then
(Que debo poner aqui para que se borre este texto y se quede el link??)
End If
Bueno por hay me quede no se hacer decir que se borre un texto seleccionado porfavor ayuda!!
podrias hacer
listbox1.text.replace("","")
un simple remplazo o separarlo con split("") y el index q contenga dicho caracter eliminarle y rearmar despues, existen muchas formas realmente
Hola sprirtdead como estas gracias por responder bueno ahora mismo pruebo el code tullo aver si me funciona gracias :D
Cita de: spiritdead en 26 Octubre 2012, 03:07 AM
podrias hacer
listbox1.text.replace("","")
un simple remplazo o separarlo con split("") y el index q contenga dicho caracter eliminarle y rearmar despues, existen muchas formas realmente
Hola amigo bueno he probado el code pero no me funciona pero de todos modos gracias
:D
la solucion no es reemplazar los caracteres, la solucion debe ser ver porque te esta grabando esos caracteres, hace estas 2 simples cosas.
1 - fijate si el archvio de texto creado tiene realmente esos caracteres grabados, abrilo con el bloc de notas y fijate.
2 - pone el codigo fuente que usas para grabar y cargar el archivo, me juego que ahi esta el problema.
sin codigo no podemos ver que estas haciendo.
Cita de: seba123neo en 26 Octubre 2012, 03:27 AM
la solucion no es reemplazar los caracteres, la solucion debe ser ver porque te esta grabando esos caracteres, hace estas 2 simples cosas.
1 - fijate si el archvio de texto creado tiene realmente esos caracteres grabados, abrilo con el bloc de notas y fijate.
2 - pone el codigo fuente que usas para grabar y cargar el archivo, me juego que ahi esta el problema.
sin codigo no podemos ver que estas haciendo.
posiblemente sea en el modo en que obtiene dicha informacion
y lo del replace si funciona pero no entiendo porque el VS no me esta tomando bien el remplazo y en c# si
Bueno seba123neo y spiritdead estos son los codes que tengo
Para agregar y guardar en un archivo txt los items de un list box es este :
ListBox1.Items.Add(TextBox1.Text)
Dim Saveval As Integer = 1
Dim Listpath As String = "C:\Documents and Settings\Administrador\Mis documentos\Downloader X\" & "Historial de Links Introducidos" & ".txt"
Saveval = Saveval + 1
For i = 0 To ListBox1.Items.Count - 1
Form2.ListBox1.SetSelected(i, True)
Dim Listwrite As System.IO.StreamWriter
Listwrite = My.Computer.FileSystem. _
OpenTextFileWriter(Listpath, True)
Listwrite.WriteLine(ListBox1.Items(i))
Listwrite.Close()
Next
Y estos para cargar los datos otra vez al list box :
If ListBox1.Text.Contains("") Then
ListBox1.Text.Replace("", "")
End If
Dim Archivo$ = "C:\Documents and Settings\Administrador\Mis documentos\Downloader X\" & "Historial de Links Introducidos" & ".txt"
Dim FF% = FreeFile()
FileOpen(FF, Archivo, OpenMode.Input)
Do While Not EOF(FF) 'Leerá lineas hasta que termine el archivo
ListBox1.Items.Add(LineInput(FF)) 'Agregara Linea Actual leida al ListBox (Lineinput es un sistema que lee linea por linea un archivo)
Loop
FileClose(FF)
On Error GoTo fallo
fallo:
Me.Refresh()
Exit Sub
Resume
Cita de: Brian1511 en 26 Octubre 2012, 03:49 AM
Bueno seba123neo y spiritdead estos son los codes que tengo
Para agregar y guardar en un archivo txt los items de un list box es este :
ListBox1.Items.Add(TextBox1.Text)
Dim Saveval As Integer = 1
Dim Listpath As String = "C:\Documents and Settings\Administrador\Mis documentos\Downloader X\" & "Historial de Links Introducidos" & ".txt"
Saveval = Saveval + 1
For i = 0 To ListBox1.Items.Count - 1
Form2.ListBox1.SetSelected(i, True)
Dim Listwrite As System.IO.StreamWriter
Listwrite = My.Computer.FileSystem. _
OpenTextFileWriter(Listpath, True)
Listwrite.WriteLine(ListBox1.Items(i))
Listwrite.Close()
Next
Y estos para cargar los datos otra vez al list box :
If ListBox1.Text.Contains("") Then
ListBox1.Text.Replace("", "")
End If
Dim Archivo$ = "C:\Documents and Settings\Administrador\Mis documentos\Downloader X\" & "Historial de Links Introducidos" & ".txt"
Dim FF% = FreeFile()
FileOpen(FF, Archivo, OpenMode.Input)
Do While Not EOF(FF) 'Leerá lineas hasta que termine el archivo
ListBox1.Items.Add(LineInput(FF)) 'Agregara Linea Actual leida al ListBox (Lineinput es un sistema que lee linea por linea un archivo)
Loop
FileClose(FF)
On Error GoTo fallo
fallo:
Me.Refresh()
Exit Sub
Resume
mala mia tube 1 error asi es con este ejemplo
dim textoSineditar as string =""
dim textoeditado as string=""
if textoSineditar.contains("") then
textoeditado = textoSineditar.replace("","")
end if
esa es 1 forma la otra es esta
dim textoSineditar as string =""
dim textoeditado as string=""
if textoSineditar.contains("") then
textoeditado = textoSineditar.remove(textosineditar.startwith(""),3)
end if
el segundo metodo solo es si solo sale 1 sola ves si sale mas veces deberias cambiar a una rutina con While para eliminar todos las veces q este :) recomendaria la primera pero siempre es bueno dar varias opciones
sorry ando distraido y no pongo bien la sintaxis xD
Cita de: spiritdead en 26 Octubre 2012, 03:50 AM
mala mia tube 1 error asi es con este ejemplo
dim textoSineditar as string =""
dim textoeditado as string=""
if textoSineditar.contains("") then
textoeditado = textoSineditar.replace("","")
end if
esa es 1 forma la otra es esta
dim textoSineditar as string =""
dim textoeditado as string=""
if textoSineditar.contains("") then
textoeditado = textoSineditar.remove(textosineditar.startwith(""),3)
end if
el segundo metodo solo es si solo sale 1 sola ves si sale mas veces deberias cambiar a una rutina con While para eliminar todos las veces q este :) recomendaria la primera pero siempre es bueno dar varias opciones
sorry ando distraido y no pongo bien la sintaxis xD
hay varias cosas para corregir, parece que estas programando a la visual basic 6.
1 - no se porque usas para controlar los errores el
On Error GoTo, en .NET se usa
Try Catch.
2 - para abrir y guardar los archivos te recomiendo usar
StreamReader y
StreamWriter, que son unicos de .NET y son los que se usan.
para cargar al listbox hay varios metodos, algunos te dejan hacerlo sin estar recorriendo linea por linea el archivo.
aca te paso 2 metodos de carga, bien de .NET, y un metodo de guardado:
Imports System.IO
Public Class Form1
' Carga todo en una sola linea
Private Sub MetodoCarga1()
ListBox1.Items.AddRange(File.ReadAllLines("C:\prueba.txt"))
End Sub
' Carga usando StreamReader, linea por linea hasta el final del archivo
Private Sub MetodoCarga2()
Dim vArchivo As New StreamReader("C:\prueba.txt")
While Not vArchivo.EndOfStream
ListBox1.Items.Add(vArchivo.ReadLine())
End While
vArchivo.Close()
End Sub
' Guarda usando StreamWriter
Private Sub MetodoGuardado()
Dim vArchivo As New StreamWriter("C:\prueba.txt")
For Each vLinea As String In ListBox1.Items
vArchivo.WriteLine(vLinea)
Next
vArchivo.Flush()
vArchivo.Close()
End Sub
End Class
Cita de: seba123neo en 26 Octubre 2012, 04:38 AM
hay varias cosas para corregir, parece que estas programando a la visual basic 6.
1 - no se porque usas para controlar los errores el On Error GoTo, en .NET se usa Try Catch.
2 - para abrir y guardar los archivos te recomiendo usar StreamReader y StreamWriter, que son unicos de .NET y son los que se usan.
para cargar al listbox hay varios metodos, algunos te dejan hacerlo sin estar recorriendo linea por linea el archivo.
aca te paso 2 metodos de carga, bien de .NET, y un metodo de guardado:
Imports System.IO
Public Class Form1
' Carga todo en una sola linea
Private Sub MetodoCarga1()
ListBox1.Items.AddRange(File.ReadAllLines("C:\prueba.txt"))
End Sub
' Carga usando StreamReader, linea por linea hasta el final del archivo
Private Sub MetodoCarga2()
Dim vArchivo As New StreamReader("C:\prueba.txt")
While Not vArchivo.EndOfStream
ListBox1.Items.Add(vArchivo.ReadLine())
End While
vArchivo.Close()
End Sub
' Guarda usando StreamWriter
Private Sub MetodoGuardado()
Dim vArchivo As New StreamWriter("C:\prueba.txt")
For Each vLinea As String In ListBox1.Items
vArchivo.WriteLine(vLinea)
Next
vArchivo.Flush()
vArchivo.Close()
End Sub
End Class
>.> me tirastes quote ami, yo no programo en vb6 ni uso on error GoTo >.>
solo le puse 2 metodos para eliminar lo que el me pidio
Cita de: spiritdead en 26 Octubre 2012, 05:23 AM
>.> me tirastes quote ami, yo no programo en vb6 ni uso on error GoTo >.>
solo le puse 2 metodos para eliminar lo que el me pidio
si, le erre al quoteo :xD
Cita de: seba123neo en 26 Octubre 2012, 05:33 AM
si, le erre al quoteo :xD
xD lo importante es q los principiantes aprendan bien
Hola a spiritdead y a seba123neo gracias por ayudarme lo mas que puedan pero he probado en los nuevos code de Spirit y me sale el sig error les he tirado varias capturas para que haci tengas mas la idea de lo que me pasa :D
Capturas
(http://img217.imageshack.us/img217/3343/error2rs.jpg)
(http://img4.imageshack.us/img4/6828/error1wg.jpg)
la propiedad se llama StartsWith no StartWith, te falta la "s". :xD
:rolleyes: :xD :laugh: :laugh: :laugh: siiii graciassss hahahahahahah sos el mejor ahora mismo lo pruebo :D!!!!
Hola amigo como estas bueno no me funciono de todas formas ya me he puesto joder un poco a ver si me salia y lo logre me finciono a la perfeccione code que ise aqui te lo dejo para que lo verifiques!! :D
CitarDim texto As String
If TextBox1.Text.Contains("") Then
texto = TextBox1.Text.StartsWith("")
If TextBox1.Text.StartsWith("") Then
TextBox1.Text = TextBox1.Text.Replace("", "")
End If
End If
End Sub
esa variable texto sacala porque no sirve para nada, no la estas usando en ningun lado, aparte la estas igualando al StartsWith que devuelve un boolean no un string.
y sacale el Contains() tambien porque si despues abajo usas el StartsWith, estas usnado 2 cosas casi iguales.
por ejemplo si tenes el texto "holaaaaaaaa", el contains va a devolver verdadero, pero el StartsWith devuelve falso y el texto te va a quedar igual, yo directamente usaria una sola linea con Replace y listo, no importa si empieza o termina con el "" que lo reemplaze en cualquier lado de la cadena que este.
el codigo te queda una sola linea.
igual la razon de la que te guarda ese "" para mi es el tema de grabacion del archivo, porque no probas los metodos que te puse antes de grabacion, probalos total no cuesta nada.
y lo que nunca digiste es si ese "" al abrir el archvio de texto con el bloc de notas ves esos caracteres raros.
Graciasss!! amigo si me funciona igual gracias sos el mejor !! +10 + Like
Cita de: seba123neo en 26 Octubre 2012, 15:34 PM
esa variable texto sacala porque no sirve para nada, no la estas usando en ningun lado, aparte la estas igualando al StartsWith que devuelve un boolean no un string.
y sacale el Contains() tambien porque si despues abajo usas el StartsWith, estas usnado 2 cosas casi iguales.
por ejemplo si tenes el texto "holaaaaaaaa", el contains va a devolver verdadero, pero el StartsWith devuelve falso y el texto te va a quedar igual, yo directamente usaria una sola linea con Replace y listo, no importa si empieza o termina con el "" que lo reemplaze en cualquier lado de la cadena que este.
el codigo te queda una sola linea.
igual la razon de la que te guarda ese "" para mi es el tema de grabacion del archivo, porque no probas los metodos que te puse antes de grabacion, probalos total no cuesta nada.
y lo que nunca digiste es si ese "" al abrir el archvio de texto con el bloc de notas ves esos caracteres raros.
xD era 1 ejemplo para q viera como usarle, no lo quise poner exactamente textual de su codigo.... sino no aprenderia
Gracias amigo tabn fuiste de mucha ayuda por cierto estoy en otro proyecto si serias tan amable de buscarlo y leerlo a ver si me podrias ayuda! :D ??
lo intentare porque ando con 1 proyecto cliente-server por tcp q me tiene las bolas cuadradas xD
hahahahaaha ok gracias !!