去除对字节数组进行 raw.convert 后产生的多余的结束符
By
terrorist
at 2022-06-15 • 0人收藏 • 860人看过
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
登录后方可回帖
回复#1 @lup1 :
感谢纠正