将字符串编码为字节数组 – stringEncode

将字符串编码为字节数组。支持非ASCII字符。 对于非ASCII字符,其解码结果受项目设置中的字符编码选项影响,函数按照设置的编码方式进行解码。

定义

int stringEncode(byte[] array, int offset, string str);

参数

array:

保存编码后数据的字节数组

offset:

编码后数据保存的起始索引

str:

需要编码的字符串 注意检查 offset 的范围。如果offset 小于0,那么返回0。

返回值

编码后的字节长度

示例

// 定义数组,用于存储转换后的字节数据
byte a[10]; // 将字符串转换为字节数组,起始位置为0,并缓存于数组a中,函数返回值为10,由整数控件num1显示
num1.val = stringEncode(a,0,"0123456789");
// 若想要查看编码转换后的字节数据,可以用日志控件打印显示出来:
// 1. 拖一个日志控件,拉大宽度;
// 2. 勾选控件的hexMd属性;
// 3. 在上面转换函数脚本后面加上打印脚本:
// log6为日志控件名,a为上面的缓存数组,0为从a[0]开始显示,打印10个字节
log6.addBytes(a,0,10);
// 最终日志控件十六进制显示:
// 30 31 32 33 34 35 36 37 38 39
// 转换为十进制分别为:
// 48 49 50 51 52 53 54 55 56 57
// 查ASCII表,则对应0-9;
// 其他字符,如+-*/,也可编码转换。