Dartlang:如何将int从网络转换为主机顺序(反之亦然)

时间:2019-01-13 22:25:47

标签: dart flutter

如何将int从网络转换为主机顺序(反之亦然)。 在cpp中,它将是ntohl和htonl。

1 个答案:

答案 0 :(得分:1)

使用ByteData,它是一个...

  

字节序列,还提供对字节的随机且未对齐的访问   由表示的固定宽度整数和浮点数   这些字节

例如:

  ByteData byteData = ByteData(4);
  byteData.setUint32(0, netValue, Endian.big);
  int hostValue = byteData.getUint32(0);

您实际上有可能要使用基础字节-也许是发送一些网络消息。您可以像这样从字节数组中提取int

  Uint8List bytes = Uint8List(4); // 4 byte list
  // read the network order int in bytes [0-3].
  int value = bytes.buffer.asByteData().getUint32(0, Endian.big);
相关问题