NSString.toString返回以null终止的字符串

时间:2018-10-04 10:44:18

标签: ios nsstring nativescript null-terminated

在Nativescript中,我有一个使用NSString方法的插件,我想返回一个JavaScript字符串。如果运行nsstringInstance.toString(),我将得到一个以空值结尾的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方法返回不以null终止的UTF-8字符串?

1 个答案:

答案 0 :(得分:0)

.toString()NSString实例中不是有效的方法。尝试.UTF8String