如何使用Swift 3.0读取GB2312编码的文本文件

Ray*_*Ray 0 character-encoding gb2312 ios swift

我的应用程序需要读取以 GB2312 编码的文本文件。这是当前的代码。

\n\n
 SGFString = try String(contentsOf:path)\n
Run Code Online (Sandbox Code Playgroud)\n\n

它抛出异常。

\n\n
\n

无法打开\xe2\x80\x99,因为无法确定其内容的文本编码\xe2\x80\x99。

\n
\n\n

在查看 String.Encoding 值时,没有 GB2312。读取 GB2312 文本文件的最佳方法是什么?

\n\n

谢谢\n雷

\n

Ray*_*Ray 5

感谢 OOPer 的帮助。我从链接中复制了一些代码,现在可以使用了。这是代码:

extension String.Encoding {
    static let gb_18030_2000 = String.Encoding(rawValue: CFStringConvertEncodingToNSStringEncoding(CFStringEncoding(CFStringEncodings.GB_18030_2000.rawValue)))
}

Gb2312String =  try String(contentsOf:path, encoding:String.Encoding.gb_18030_2000)
Run Code Online (Sandbox Code Playgroud)