napi读取js字符串对象, 赋值给c++对象之后会出现乱码或者为空,以及如何通过读取字符串长度?
1、napi读取js字符串对象, 赋值给c++ 对象之后会出现乱码或者为空的问题. 是否由编译优化设置导致?使用napi_get_value_string_utf8,想获取字符串长度,不想通过循环判断读取整个字符串长度,不知道有什么办法。同时napi读取js字符串对象, 赋值给c++对象之后会出现乱码或者为空的问题,不确认是否由编译优化设置导致。
2、napi_get_value_string_utf8 只能读取已知长度字符串, 只能通过循环判断读取整个字符串长度?
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
如何使通过NAPI读取到的ArkTS字符串不被截断?
1749浏览 • 1回复 待解决
如何打印JSON对象和JSON字符串
1490浏览 • 1回复 待解决
如何将对象转为JSON字符串?
1737浏览 • 1回复 待解决
JS UI 如何读取string.json中配置的字符串
7307浏览 • 1回复 待解决
根据指定字符串,随机生成 指定长度的字符串
1643浏览 • 1回复 待解决
HarmonyOS 字符串如何精确判断是否为空
1001浏览 • 1回复 待解决
HarmonyOS中如何解析JSON字符串为实例对象?
983浏览 • 0回复 待解决
HarmonyOS 读取本地json文件转成字符串
1167浏览 • 1回复 待解决
如何将JSON字符串转Class对象
1422浏览 • 1回复 待解决
HarmonyOS 字符串长度判定异常
685浏览 • 1回复 待解决
HarmonyOS Hilog日志字符串长度限制
1114浏览 • 1回复 待解决
HarmonyOS 如何判定一个String字符串,为空或者为null
897浏览 • 1回复 待解决
判断字符串是否为空和空白符
3084浏览 • 1回复 待解决
ArkTS中,HashMap对象怎么转成 json字符串?
1918浏览 • 1回复 待解决
HarmonyOS 如何通过纯字符串获取Hap内的字符串资源
1328浏览 • 1回复 待解决
如何实现将JSON字符串转化为特定对象?
1809浏览 • 1回复 待解决
HarmonyOS关于通过字符串映射生成类对象的能力
1374浏览 • 1回复 待解决
HarmonyOS 是否可以将json字符串内容赋值给一个已创建的对象
975浏览 • 1回复 待解决
HarmonyOS 字符串变量是否有长度限制?
950浏览 • 1回复 待解决
HarmonyOS将对象转换成字符串的方法
2005浏览 • 1回复 待解决
HarmonyOS Json字符串与Map集合对象如何互转?
1220浏览 • 1回复 待解决
如何将JSON字符串转Class对象数组?
1503浏览 • 1回复 待解决
应用引用media中的字符串资源如何拼接字符串
482浏览 • 0回复 待解决
检查字符串是否以给定的字符串开头
1807浏览 • 1回复 待解决
字符串反射
954浏览 • 1回复 待解决
1.可以使用napi_get_value_string_utf8的第五个参数来获取ArkTS层传入字符串的长度。这个参数是一个指向size_t类型的变量,它会在函数调用成功后被赋值为字符串的长度。你可以根据这个长度来分配合适大小的char数组。具体操作为:先调用napi_get_value_string_utf8函数来获取字符串的长度,然后根据长度分配char数组的内存空间。最后,我们再次调用napi_get_value_string_utf8函数来获取字符串的内容。注意,我们在分配内存时,可以将长度+1,以便为字符串添加终止符’\0’。
代码如下:
2.另,在char* 转string的过程中有可能出现类型转换耗时的问题,导致乱码的出现,把util_get_object_string_property_value()和util_get_object_string_property_value()的返回值都设成char*可以解决问题。