去除对字节数组进行 raw.convert 后产生的多余的结束符

By terrorist at 2022-06-15 • 0人收藏 • 760人看过
import web.json
import console

// 一个字节数组
class struct{
	ctor( str ){
		this.str = str
	};
	BYTE str[5]
}

var obj = struct("aaa")   
console.log( "str 长度:", #obj.str ) // 打印 3

// 写入指针,再取出来
var ptr = raw.buffer(obj)
var obj2 = raw.convert(ptr, struct())
console.log( "raw.convert 后的 str 长度:", #obj2.str ) // 打印 5

// 为什么要去除,一个案例是转换出来的 json 会有多余的字符
console.log("JSON", web.json.stringify({key=obj2.str})) // 打印 {"key":"aaa\u0000\u0000"}

// 去除后面多余的结束符
var ret = string.replace(obj2.str, "\z+$", "")
console.log( "去除后长度:", #obj.str ) // 打印 3

console.pause(true)


后记:

string.str( ... )

即可 , 不用上面那么复杂

1 个回复 | 最后更新于 2022-06-18
2022-06-16   #1

回复#1 @lup1 :

感谢纠正

登录后方可回帖

登 录
信息栏
 私人小站

本站域名

ChengXu.XYZ

投诉联系:  popdes@126.com



快速上位机开发学习,本站主要记录了学习过程中遇到的问题和解决办法及上位机代码分享

这里主要专注于学习交流和经验分享.
纯私人站,当笔记本用的,学到哪写到哪.
如果侵权,联系 Popdes@126.com

友情链接
Aardio官方
Aardio资源网


才仁机械


网站地图SiteMap

Loading...