Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Ayuda en fichero de texto en aplicacion mobil

Estas en el tema de Ayuda en fichero de texto en aplicacion mobil en el foro de Visual Basic clásico en Foros del Web. Muy buenas tardes, soy de Asuncion Paraguay, y soy nuevo el tema de aplicaciones moviles y visual basic.net. Estoy haciendo una aplicacion sencilla de inventario ...
  #1 (permalink)  
Antiguo 22/02/2011, 09:39
 
Fecha de Ingreso: febrero-2011
Mensajes: 1
Antigüedad: 13 años, 2 meses
Puntos: 0
Ayuda en fichero de texto en aplicacion mobil

Muy buenas tardes, soy de Asuncion Paraguay, y soy nuevo el tema de aplicaciones moviles y visual basic.net.
Estoy haciendo una aplicacion sencilla de inventario que tiene un simple cuadro de texto que al prenderse el lector escanea un codigo, lo pasa al cuadro de texto y al hacer enter se va escribiendo uno debajo del otro en un fichero de texto dentro del dispositivo.
Lo que me piden ahora es que al escanear un codigo se valide que ese codigo no se haya leido dos veces, que salga un mensaje diciendo "Codigo ya leido" o algo asi, ya que en el deposito son productos con codigos unicos y se desea validar que por error no se lean dos veces el mismo codigo.
paso mi codigo:


Imports System.IO


Public Class Form1
'Dim strStreamW As Stream

Dim strStreamWriter As StreamWriter
Dim FilePath As String = ("\Archivos de programa\scan.txt")


Private Sub txtCodigo_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtCodigo.KeyPress

If e.KeyChar = Microsoft.VisualBasic.ChrW(13) Then
'
' abrir el archivo y escribir el codigo
'
strStreamWriter = New StreamWriter(FilePath, True)
strStreamWriter.WriteLine(txtCodigo.Text)
'
' cerrar el archivo
'
strStreamWriter.Close()
'
' limpiar y enfocar el codigo
'
Me.txtCodigo.Text = ""
Me.txtCodigo.Focus()
End If

End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Close()

End Sub


End Class


Agradeceria muchisimo su ayuda.
Saludos desde Paraguay.
  #2 (permalink)  
Antiguo 22/02/2011, 14:15
Avatar de erbuson  
Fecha de Ingreso: noviembre-2009
Mensajes: 701
Antigüedad: 14 años, 5 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 ...

Etiquetas: fichero, aplicaciones
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:49.