如何在不使用java.nio的情况下将字节数组转换为long?
我正在实施一个可靠的数据传输协议。我需要将长值校验和传递给接收器。我不允许使用java.nio 我知道如何将long转换为字节数组,如下所示:如何在不使用java.nio的情况下将字节数组转换为long?,java,networking,bytearray,long-integer,checksum,Java,Networking,Bytearray,Long Integer,Checksum,我正在实施一个可靠的数据传输协议。我需要将长值校验和传递给接收器。我不允许使用java.nio 我知道如何将long转换为字节数组,如下所示: ByteArrayOutputStream baos = new ByteArrayOutputStream(); DataOutputStream dos = new DataOutputStream(baos); dos.writeLong(someLong); dos.close(); byte[] longBytes = baos.toByteA
ByteArrayOutputStream baos = new ByteArrayOutputStream();
DataOutputStream dos = new DataOutputStream(baos);
dos.writeLong(someLong);
dos.close();
byte[] longBytes = baos.toByteArray();
但是如何在不使用java.nio的情况下将字节数组转换为long呢 你可以这样做
ByteArrayInputStream bais = new ByteArrayInputStream(longBytes);
DataInputStream dis = new DataInputStream(bais);
someLong = dis.readLong();
展示你的工作,这样我们就可以通过将一个长字节转换为8个字节并返回来理解sameStart,然后对整个数组进行转换将很容易。我主要关心的是如何将字节数组转换为long。@uohzxela如果不知道另一个转换是如何完成的,你就不能这样做。@uohzxela是保证长度的字节数组。是的,它的大小应该是8。