lua字符串与十六进制数据转换

简介: lua字符串与十六进制数据转换

使用库函数进行转换:


在线地址:https://wiki.luatos.com/_static/luatos-emulator/lua.html

function fromHex(hex)
    --滤掉分隔符
    local hex = hex:gsub("[%s%p]", ""):upper()
    return hex:gsub("%x%x", function(c)
        return string.char(tonumber(c, 16))
    end)
end

function toValue(str)
    return fromHex(str:gsub("%x", "0%1"))
end

local s="123456ef"
local hexs=toValue(s)
for i=1,8 do
    print(i, "ascii: ", s:byte(i), ", hex: ", hexs:byte(i))
end


执行结果:

[01:09:36] 虚拟机初始化完毕
[01:09:36] 1  ascii:  49  , hex:  1
[01:09:36] 2  ascii:  50  , hex:  2
[01:09:36] 3  ascii:  51  , hex:  3
[01:09:36] 4  ascii:  52  , hex:  4
[01:09:36] 5  ascii:  53  , hex:  5
[01:09:36] 6  ascii:  54  , hex:  6
[01:09:36] 7  ascii:  101 , hex:  14
[01:09:36] 8  ascii:  102 , hex:  15
[01:09:36] 虚拟机已停止运行

目录
相关文章
|
4月前
|
存储 C语言 图形学
C 函数中如何保存 Lua 的数据(1)
C 函数中如何保存 Lua 的数据(1)
73 0
|
数据采集 前端开发 大数据
Lua 获取 Get 与 Post 请求数据|学习笔记
快速学习 Lua 获取 Get 与 Post 请求数据
Lua 获取 Get 与 Post 请求数据|学习笔记
|
4月前
|
C语言 C++ 索引
C 函数中如何保存 Lua 的数据(2)
C 函数中如何保存 Lua 的数据(2)
60 1
|
10月前
|
消息中间件 存储 NoSQL
【实战】使用Lua脚本怎么清理redis中的数据【实战】使用Lua脚本怎么清理redis中的数据
首先我们通过hiredis 向redis 中写入了数据,这里我们主要以测试为目的,所以,Key 值设定为毫秒级时间戳。
102 0
|
数据采集 NoSQL Java
Lua 脚本读取 redis 数据|学习笔记
快速学习 Lua 脚本读取 redis 数据
Lua 脚本读取 redis 数据|学习笔记
|
数据采集 大数据 应用服务中间件
Lua 获取 Header 与 Body 数据|学习笔记
快速学习 Lua 获取 Header 与 Body 数据
Lua 获取 Header 与 Body 数据|学习笔记
|
Web App开发 网络协议
八,ESP8266 文件保存数据(基于Lua脚本语言)
应该是LUA介绍8266的最后一篇,,,,,,下回是直接用SDK,,然后再列个12345.......不过要等一两个星期,先忙完朋友的事情 前面几篇 用AT指令版本的 一,  http://www.cnblogs.
1578 0