from float example bytes java python struct pack

java - float - python struct pack example



Java equivalente de struct.pack de Python? (4)

¿Existe alguna función equivalente a struct.pack de Python en Java que me permita empaquetar y desempaquetar valores como este?

pump_on = struct.pack("IIHHI", 0, 0, 21, 96, 512)


Algo como esto:

final ByteArrayOutputStream data = new ByteArrayOutputStream(); final DataOutputStream stream = new DataOutputStream(data); stream.writeUTF(name); stream.writeUTF(password); final byte[] bytes = stream.toByteArray(); // there you go

Más tarde, puedes leer esos datos:

final DataInputStream stream = new DataInputStream( new ByteArrayInputStream(bytes) ); final String user = stream.readUTF(); final String password = stream.readUTF();


Comencé a desarrollar un proyecto que está muy cerca de Python Struct: java-binary-block-parser en JBBP.

JBBPOut.BeginBin().Int(0,0).Short(21,96).Int(512).End().toByteArray();


Creo que lo que puede ser después es un ByteBuffer :

ByteBuffer pump_on_buf = ... pump_on_buf.putInt(0); pump_on_buf.putInt(0); pump_on_buf.putShort(21); pump_on_buf.putShort(96); pump_on_buf.putInt(512); byte[] pump_on = pump_on_buf.array();


La característica más cercana en el núcleo de Java es la Serialization . Convierte el objeto en secuencia de bytes y viceversa.