Foros del Web » Programación para mayores de 30 ;) » .NET »

Lectura de archivos binarios (*.bin) Visual Basic 2010

Estas en el tema de Lectura de archivos binarios (*.bin) Visual Basic 2010 en el foro de .NET en Foros del Web. Hola compañeros, Bueno, antes decir que soy algo novato en el tema de la programación pero ya se hacer mis cosas. Estoy en un proyecto ...
  #1 (permalink)  
Antiguo 19/09/2011, 05:33
 
Fecha de Ingreso: septiembre-2011
Mensajes: 1
Antigüedad: 12 años, 7 meses
Puntos: 0
Pregunta Lectura de archivos binarios (*.bin) Visual Basic 2010

Hola compañeros,

Bueno, antes decir que soy algo novato en el tema de la programación pero ya se hacer mis cosas.

Estoy en un proyecto en el cual voy a editar un archivo (*.bin); Este archivo trae información que quiero descodificar.

El archivo esta compuesto por bloques de una longitud de 206 bytes, cada bloque trae unos parámetros que son la información que quiero descodificar.

Ejemplo:
Cada bloque empieza por una cadena que le vamos a llamar "nombre".
Para cargar dicha información utilizo el siguiente método.
Código:
        Using fs As FileStream = New FileStream("FILE.bin", FileMode.Open, FileAccess.Read, FileShare.Read)
            Using br As BinaryReader = New BinaryReader(fs)
                Const START As Long = 694
                Const STR_LEN As Long = 22
                Const SEC As Long = 206

                fs.Seek(START, SeekOrigin.Begin)
                Do
                    Dim bytes() As Byte = br.ReadBytes(STR_LEN)
                    Dim value As String = Encoding.ASCII.GetString(bytes)
                    If (fs.Position + SEC + STR_LEN) >= fs.Length Then
                        Exit Do
                    Else
                        ListBox1.Items.Add(value)
                    End If
                Loop

            End Using
        End Using
Ya en este método tengo un problema, este método me lee el archivo hasta el final... y yo quiero que lea hasta cierto offset; Ejemplo: 2316739
Como podría solucionarlo?

Ahora vamos con la segunda parte del problema.

Una vez cargados esos datos en el listbox, como podría hacer en el evento SelectedIndexChanged, al cambiar de item me cargara los datos de cada bloque según el offset?

Ejemplo:

Si después de cada "nombre" a una distancia por ejemplo (6 bytes) hay un valor que quiero cargar en un textbox y quiero este valor lo vuelva a cargar al cambiar de item y cargando los datos según el bloque.

Agradecería de sobremanera la ayuda. Espero que seáis pacientes y podáis ayudarme.

Un saludo.

Etiquetas: basic, lectura, textbox, visual, binario
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 16:40.