elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  char[] to struct
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: char[] to struct  (Leído 1,289 veces)
Xedrox

Desconectado Desconectado

Mensajes: 274



Ver Perfil
char[] to struct
« en: 15 Junio 2014, 02:16 am »

Hola gente, como andan?

   Si se guían por el titulo, parece que me equivoque de sección, no? Pero no es así  ;D . Les comento, vengo trabajando con C++ y unos archivos de datos de una aplicación externa un tanto engorrosos de trabajar, pero al fin uno se arregla. Cada linea de estos archivos de datos puede tratarse como un registro de una base de datos. El método que me trae el registro en C++ me lo deja cargado en un "char[XXX]" donde XXX es la cantidad de bytes. Por un lado yo tengo, a modo ejemplo, el siguiente "struct":

Código:
struct MiClase
{
     short campo1;
     short campo2;
     char campo3[5];
     short campo4;
}

A su vez, el metodo de lectura me dejo un lindo char[11], vease que MiClase tiene un size de 11. Por supuesto que esos 11 bytes estan compuestos de caracteres no imprimibles que corresponden al campo 1,2 y 4. Si instancio un objeto de MiClase, como traspaso la informacion del char? Simplemente haciendo un "memcpy".

Ahora, descubri recientemente que tengo Java en este equipo, y hasta tengo un metodo en Java que lee estos archivos!. Solo que en vez de "char[]" me los deja en "byte[]". La consulta es, si tuviera en java una clase equivalente a mi estructura:

Código:
public class MiClase
{
     short campo1;
     short campo2;
     Char campo3 = new Char[5];
     short campo4;
}

Como puedo volcar la informacion del "byte[]" a un objeto de "MiClase". Algunos podria decirme que use arracopy y que lo haga campo por campo, pero quiero evitar absolutamente esto porque tengo varias clases que superan los 200 campos y seria muy costoso salirme de C++ a Java si no puedo implementar algo similar a "memcpy".

Desde ya muchas gracias
Saludos.



En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines