我是 Lua 的新手,我正在为 Wireshark 构建一个自定义解析器。我的情况是这样的:
Wireshark 数据由十六进制数字组成,例如 4321 8765 CBA9。我想结束的是(在解剖之后):CBA9 8765 4321。
到目前为止,我所做的是在 Lua 中创建一个小函数,它将单独获取这些数字,将它们转换为字符串,并将它们按正确的顺序放置。
function ReverseOrder3Numbers(hex_1, hex_2, hex_3)
local hex_1_int = hex_1:uint()
local hex_2_int = hex_2:uint()
local hex_3_int = hex_3:uint()
word1 = string.format("%04X", hex_1_int)
word2 = string.format("%04X", hex_2_int)
word3 = string.format("%04X", hex_3_int)
combined_string = "0x" .. word3 .. word2 .. word1
output = combined_string
return output
end
但是,一旦我将这束添加到树中,我会收到一条错误消息 Lua Error: ...: call 'add' on bad self (userdata expected, got string)。
我怎样才能解决这个问题?我需要完全不同的方法吗?我不是在寻找任何复杂或花哨的东西。我需要做的就是我所描述的。任何帮助,将不胜感激。