我有以下代码,我需要将几个 UInt32 变量转换为 UInt8 向量,然后将它们组合成一个 UInt8 向量。
目标是获取我从 Pcap 文件中解码的记录,并将其放入可以附加到现有 Pcap 文件末尾的格式。
下面的代码从前一个函数中获取输出,并返回 4 个 UInt 32 的十六进制输出和一个 UInt8 向量作为有效载荷。
function pcap_get_record(s::PcapOffline)
rec = PcapRec()
if (!eof(s.file))
rec.ts_sec = s.is_big ? read(s.file, UInt32) : ntoh(read(s.file, UInt32))
rec.ts_usec = s.is_big ? read(s.file, UInt32) : ntoh(read(s.file, UInt32))
rec.incl_len = s.is_big ? read(s.file, UInt32) : ntoh(read(s.file, UInt32))
rec.orig_len = s.is_big ? read(s.file, UInt32) : ntoh(read(s.file, UInt32))
rec.payload = read(s.file, rec.incl_len)
return rec
end
nothing
end
Run Code Online (Sandbox Code Playgroud)
谢谢
这个给你
julia> reinterpret(UInt8, rand(UInt32, 1)) |> Vector
4-element Array{UInt8,1}:
0x4d
0x54
0x34
0xd3
Run Code Online (Sandbox Code Playgroud)
记得检查字节顺序。