No se en donde fallo, y lo he intentado.
He cogido la estructura del fichero de conductores que me pasastes Casimiro ... esta:
a) Datos de la tarjeta de conductor:
Todos los archivos elementales de la tarjeta que se transfieren en una sesión de descarga deben almacenarse en un único fichero.
Cada fichero contendrá un conjunto de registros lógicos,
que se corresponderán con archivos elementales de la tarjeta y que tendrán la siguiente estructura de campos:
Nombre
Longitud
(bytes)
Significado o valor
FID
Tipo
Longitud
Datos 2
1
2
[Longitud]
Identificador del archivo elemental
‘00’ (archivo elemental)
‘01’ (firma de archivo elemental)
Tamaño del archivo elemental
Contenido del archivo elemental
Los ficheros de datos deberán contener los siguientes archivos elementales:
Archivo
FID
Descripción
ICC
0002
Identificación física de la tarjeta.IC0005
Identificación del chip.Application _identification0500
Versión, tamaño de los registros internos,….Card_CertificateC100
Certificado de la tarjeta.CA_CertificateC108
Certificado de la CIA.Identification0520
Número, CIA, fecha de validez,….Card_Download050E
Fecha y hora de la última transferencia de datos de la tarjeta.Driving_license_info0521
Número, país de expedición, fecha de validez,….Events_data0502
Registro de incidentes.Faults_data0503
Registro de fallos.Driver_Activity_data0504
Actividad del conductor.Vehicles_Used0505
Vehículos utilizados.Places0506
Lugares donde comienza o termina un periodo de trabajo diario.Current_Usage0507
Fecha, hora y vehículo en que se abrió la sesión.Control_Activity_Data0508 Actividades de control sobre la tarjeta.Specific_Conditions0522
Fuera de ámbito, transbordador,….
Y con estos ejemplos que os paso en el fichero 'ficheros tarjeta conductores.zip'
pero no consigo que por ejemplo me diga el número de tarjeta a la que pertenece.
En el ejemplo que os paso para leer estos ficheros, podreis ver que tengo que convertir los bytes que voy recogiendo a HEX pero aun así no veo la manera de seguir. Aparentemente el primer registro que cargo me dice para FID 0002 entre los dos bytes que recupero para tipo cargo 00 para longitud cargo 19, pero después el número de tarjeta no me lo devuelve bien no coincide con el que debería de poner que es el del nombre del fichero.
En fin os envío también el código realizado para su lectura, si me podeis decir en que fallo os lo agradecería pues me estoy dando cabezazos contra algo que no llego a más. Saludos