指南-Luat二次开发教程指南-功能开发教程-formatString

本文介绍了位操作库bit和数据格式转换库的API,包括位移、测试、设置、清除、取反等位操作,以及utf8、ucs2、gb2312之间的编码转换。通过示例展示了如何使用这些API进行数据的格式化处理。在遇到字符串打印为空的问题时,可以尝试使用toHex()方法。同时提供了相关开发板的购买链接。
摘要由CSDN通过智能技术生成

FormatString

简介

比特( bit)是二进制单位( binary unit)或二进制数字(binary digit)的缩写,pack 库支持将一系列数据按照格式字符转化为 lua 字符串或者将 lua 字符串按照格式字符转化成一系列值,utf8、 ucs2、 gb2312编码是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求:以上都是常见的数据格式。需要进行运算、转换等格式化处理。

API说明

  • bit
API接口描述
bit.bit()左移运算,等价于C语言中的1 << position
bit.isset()测试位数是否被置1
bit.isclear()位数是否被置0
bit.set()置1
bit.clear()置0
bit.bnot()取反
bit.band()
bit.bor()
bit.bxor()异或
bit.lshift()左移
bit.rshift()右移
bit.arshift()算数右移

详细的API介绍见bit API章节

  • 扩展库pack
API接口描述
pack.pack()打包字符串的值,在pack的时候有符号 无符号的输出结果都是一样的 unpack时有符号跟无符号才有区别
pack.unpack()解包字符串

详细的API介绍见pack API章节

  • 编码格式转换库
API接口描述
common.ucs2ToGb2312(ucs2s)unicode小端编码 转化为 gb2312编码
common.gb2312ToUcs2(gb2312s)gb2312编码 转化为 unicode小端编码
common.ucs2beToGb2312(ucs2s)unicode大端编码 转化为 gb2312编码
common.gb2312ToUcs2be(gb2312s)gb2312编码 转化为 unicode大端编码
common.ucs2ToUtf8(ucs2s)unicode小端编码 转化为 utf8编码
common.utf8ToUcs2(utf8s)utf8编码 转化为 unicode小端编码

详细的API介绍见common API章节

实现流程

调用相应接口。

示例

demo讲解

常见问题

1、字符串打印为空。原因是字符串里有不可见字符比如“空字符(Null)”,解决方式toHex()后打印。

相关开发板购买链接

Air724UG开发板
Air724 开发板使用说明

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值