您的位置:首页 > 编程语言 > Java开发

java 对象 转换成字节数组发送给服务器,根据服务器返回的字节数组自动组装成java对象。

2012-05-14 17:58 495 查看
public static class DrawingSettings implements ByteObject {
public double r; // red;
public double g; // green;
public double b; // blue;
public double a; // 透明度
public int line_no; // 线号
public int line_width; // 线宽

@Override
public byte[] toBytes() {
ByteBuffer buffer = ByteBuffer.allocate(4 * 8 + 2 * 4);

buffer.order(ByteOrder.LITTLE_ENDIAN);

buffer.putDouble(r);
buffer.putDouble(g);
buffer.putDouble(b);
buffer.putDouble(a);

buffer.putInt(line_no);
buffer.putInt(line_width);

return buffer.array();
}

@Override
public Object toObject(byte[] bytes) {

ByteBuffer buffer = ByteBuffer.wrap(bytes);
buffer.order(ByteOrder.LITTLE_ENDIAN);

this.r = buffer.getDouble(0);
this.g = buffer.getDouble(8);
this.b = buffer.getDouble(16);
this.a = buffer.getDouble(24);

this.line_no = buffer.getInt(32);
this.line_width = buffer.getInt(36);
return this;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: