在 Swift 中将 ISO8859 1-16 编码的文本转换为字符串。
let encoding = ISO8859.part1
let string = String([...], iso8859Encoding: encoding)
编码 | 名称 | 枚举 |
---|---|---|
ISO8859-1 | 拉丁语 1 西欧语 | ISO8859.part1 |
ISO8859-2 | 拉丁语 2 中欧语 | ISO8859.part2 |
ISO8859-3 | 拉丁语 3 南欧语 | ISO8859.part3 |
ISO8859-4 | 拉丁语 4 北欧语 | ISO8859.part4 |
ISO8859-5 | 拉丁/西里尔文 | ISO8859.part5 |
ISO8859-6 | 拉丁/阿拉伯文 | ISO8859.part6 |
ISO8859-7 | 拉丁/希腊文 | ISO8859.part7 |
ISO8859-8 | 拉丁/希伯来文 | ISO8859.part8 |
ISO8859-9 | 拉丁语 5 土耳其语 | ISO8859.part9 |
ISO8859-10 | 拉丁语 6 北欧语 | ISO8859.part10 |
ISO8859-11 | 拉丁/泰语 | ISO8859.part11 |
ISO8859-13 | 拉丁语 7 波罗的海沿岸语 | ISO8859.part13 |
ISO8859-14 | 拉丁语 8 凯尔特语 | ISO8859.part14 |
ISO8859-15 | 拉丁语 9 | ISO8859.part15 |
ISO8859-16 | 拉丁语 10 东南欧语 | ISO8859.part16 |
if
let path = Bundle.main.path(forResource: "Hebrew-Text", ofType: "txt"),
let hebrewTextData = try? Data(contentsOf: URL(fileURLWithPath: path)),
let string = String(hebrewTextData, iso8859Encoding: ISO8859.part8)
{
print(string)
}
let turkishTextData = Data(bytes: [84, 252, 114, 107, 231, 101])
if let string = String(turkishTextData, iso8859Encoding: ISO8859.part9) {
print(string) // Returns "Türkçe"
}
let greekTextbytes: [UInt8] = [0xE1, 0xE2, 0xE3, 0xE4]
if let string = String(greekTextbytes, iso8859Encoding: ISO8859.part7) {
print(string) // Returns "αβγδ"
}
在您的 Package.swift
文件中添加 ISO8859
作为依赖项
import PackageDescription
let package = Package(
dependencies: [
.package(url: "https://github.com/Cosmo/ISO8859.git", from: "1.1.0"),
]
)
只需将源文件拖到您的项目中即可。
ISO8859 在 MIT 许可证下发布。