ios - NSString.toString 返回以 null 结尾的字符串
问题描述
在 Nativescript 中,我有一个使用 NSString 方法的插件,我想返回一个 javascript 字符串。如果我运行,nsstringInstance.toString()
我会得到一个以 null 结尾的 javascript 字符串。我可以通过从字符串末尾删除所有 \0 字符来解决它。有更好的方法吗?
function base64_decode(base64string) {
let nsdata = NSData.alloc().initWithBase64EncodedStringOptions(base64string, opts);
return NSString.alloc().initWithDataEncoding(nsdata, NSUTF8StringEncoding).toString();
}
我可以通过使用这个来解决这个问题
let decoded = base64_decode("SOME BASE64 STRING").replace(/\0+$/,'');
这是唯一的方法,还是有一个 NSString 方法来返回非空终止的 UTF-8 字符串?
解决方案
.toString()
NSString
在实例中不是有效的方法。尝试.UTF8String
推荐阅读
- react-native - 如何在开发人员的应用程序审查中测试本机反应?
- c# - 无法在 VS 2019 中调试方法,
- python - Gunicorn / Procfile - 找不到module.wsgi
- javascript - 我想通过在 javascript Promise 中使用 Async Awaits 功能来打印函数返回值
- javascript - 从对象数组的对象中创建具有唯一元素的新对象
- ios - 使用复杂字典的 Swift 问题
- r - how to determine season dry or rainy in temporal analysis using R?
- spring-boot - Spring boot 2.3.5 迁移问题——仅在我的本地环境中
- java - while 循环中的 ResultSet 找不到列名
- java - 如何使用 gradle 在另一个子项目中导入测试类?