Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/02/2011, 14:15
Avatar de erbuson
erbuson
 
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 15 años, 4 meses
Puntos: 53
Respuesta: Ayuda en fichero de texto en aplicacion mobil

Hola, aunque este no es el foro adecuado, ya que deberías preguntar en el de VB.NET, te voy a contestar como lo haría yo que estoy intentando hacer un pequeño aplicativo también para PDA basado en archivos de Texto.

Podrías abrir el archivo como LECTURA y procesarlo del principio al final o hasta que encuentres coincidencia con el dato leido. Por supuesto sales de la funcion cerrando el archivo.

Si encuentras coincidencia, das el mensaje de aviso. Si no la encuentras puedes grabar el nuevo valor leido.

Te pongo un ejemplo de una rutina que tengo creada para leer integramente un archivo de texto en un Array de Cadena

Código vb:
Ver original
  1. Public Function txtInput(ByVal Fichero As String, ByRef Lineas() As String) As Boolean
  2.         ' Lee un fichero Secuencial si existe y lo devuelve en el Array indicado.
  3.        ' Devuelve Falso si no existe.
  4.        txtInput = False
  5.         If Not File.Exists(Fichero) Then Exit Function
  6.         Dim Contenido As String = vbNullString
  7.         Dim Ficherotxt As New IO.StreamReader(Fichero, System.Text.Encoding.Default)
  8.         Contenido = Ficherotxt.ReadToEnd
  9.         Ficherotxt.Close()
  10.         Lineas = Split(Contenido, vbCrLf)
  11.         txtInput = True
  12. End Function

De este modo puedes en un For/Next desde 0 hasta Ubound del Array verificar la existencia del dato.

Como te decía, si no existe, puedes grabarlo así:

Código vb:
Ver original
  1. Public Sub txtAppend(ByVal Fichero As String, ByVal Linea As String)
  2.         ' Añade Linea al fichero Secuencial
  3.        Dim FicheroTxt As New IO.StreamWriter(Fichero, True, System.Text.Encoding.Default)
  4.         FicheroTxt.WriteLine(Linea)
  5.         FicheroTxt.Close()
  6. End Sub

Saludos

Pd: Si algún moderador cree oportuno pasar el post al foro de VB.NET por mi, perfecto. De ser así, SUPERBIRKOF, si necesitas alguna aclaración más mandame un mensaje ya que no suelo entrar en el foro de NET
Gracias
__________________
Agradecer a quien te enseñó, es enseñar lo que de él aprendiste.
Recuerda: Decir gracias, poco cuesta y mucho vale ...