繁体   English   中英

Swift 3.1:String.Encoding(rawValue:)在iOS应用程序中运行不正确

[英]Swift 3.1: String.Encoding(rawValue: ) run incorrectly in an iOS application

我在命令行工具应用程序中编写了一些代码,它可以正常运行。 但是,当我将它带到我的iOS应用程序时 ,它出错了。

essentil代码为:

let foo = CFStringConvertEncodingToNSStringEncoding(CFStringEncoding(CFStringEncodings.GBK_95.rawValue))
let bar = String.Encoding(rawValue: foo)
print("foo=\(foo)")
print("bar=\(bar)")

当我在命令行工具应用程序中运行这些代码时,我得到了:

foo=2147485233
bar=Chinese (GBK)

当我在iOS应用程序中运行这些代码时,我得到了:

foo=2147485233
bar=

代码在两种环境中得到不同的结果似乎令人惊讶。 bar是否获得空的Enumeration值?如何解决?

在此处输入图片说明

在此处输入图片说明

嗯...我得到的帮助来自这个

请改用GB_18030_2000。

let encoding = String.Encoding(rawValue: CFStringConvertEncodingToNSStringEncoding(CFStringEncoding(CFStringEncodings.GB_18030_2000.rawValue)))

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM