arrays - Julia - 从 UInt8 数组读取 UInt32

标签 arrays julia data-conversion

我有从 TCPSocket 获得的 UInt8 数据数组。

我想从不同的索引读取 UInt32s 和 UInt16s。

例如:

data = UInt8[0xFF, 0x00, 0x00, 0x00, 0xAA, 0x00]

// Something like this:
extracted_UInt32 = data.readUInt32(1) # [1-4]
extracted_UInt16 = data.readUInt16(5) # [5-6]

它与 Node.js 的 Buffer.readUInt16LE(offset) 完全一样:https://nodejs.org/api/buffer.html#buffer_buf_readint16le_offset

谢谢!

最佳答案

您可以 read缓冲区中给定类型的数据:

julia> data = IOBuffer(UInt8[0xFF, 0x00, 0x00, 0x00, 0xAA, 0x00]);

julia> a = read(data, UInt32)
0x000000ff

julia> b = read(data, UInt16)
0x00aa

您可以直接从 TCP 套接字执行此操作,而无需具体化为字节向量。

关于arrays - Julia - 从 UInt8 数组读取 UInt32,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62085221/

相关文章:

java - 当负输入时获取最大值 = 0

javascript - 如何检查数组中的单词是否存在于给定字符串中

c - 在sqlite的回调函数中动态重新分配2个dim数组

Julia 每次都会编译脚本吗?

julia - 怎么用 map 啊!在 Julia ?

java - Java中如何将二进制字符串转换为十进制字符串

Swift BitConverter.DoubleToInt64Bits 等效

c# - 如何按相同索引对两个数组进行排序?

c++ - 从 Julia 调用具有 std::vectors 作为输入和输出参数的 C++ 函数

c - C中的8位到4位整数转换,将signed int转换为-8?