Java 如何将InputStream.read()转换为double?

Java 如何将InputStream.read()转换为double?,java,Java,是否有一种简单的方法将从流中读取的字节数组转换为双值 InputStream input = serialPort.getInputStream(); while(true) { byte[] buffer = new byte[ 8 ]; len = input.read( buffer ); } 缓冲区=>double 你能形象地解释一下InputStream.read(字节[]b)是如何工作的吗 如果您经常做这样的操作,可能最好使用它,它提供了一组操作,如readDouble等

是否有一种简单的方法将从流中读取的字节数组转换为双值

InputStream input = serialPort.getInputStream();
while(true) {
  byte[] buffer = new byte[ 8 ];
  len = input.read( buffer );
}
缓冲区=>double


你能形象地解释一下InputStream.read(字节[]b)是如何工作的吗

如果您经常做这样的操作,可能最好使用它,它提供了一组操作,如readDouble等

DataInputStream input = new DataInputStream(serialPort.getInputStream());
double d = input.readDouble();
InputStream.read(byte[]b)
将把下一个字节读入
b
参数

并且,您可以尝试使用读取Double、Float、Integer等。您可以使用以下命令实例化DataInputStream:

DataInputStream input = new DataInputStream(YOUR_INPUT_STREAM);

尝试使用DataInputStream()包装InputStream对象并使用readDouble方法

您不想将该InputStream包装到另一个更易于使用的流中吗?可能是由BufferedInputStream包装的DataInputStream?