Perfect INI 编解码

Get Involed with Perfect!

Star Perfect On Github Stack Overflow Follow Perfect on Twitter Join the Perfect Slack

Swift 4.0 Platforms OS X | Linux License Apache PerfectlySoft Twitter Slack Status

本项目为 INI 文件提供了一个编码器和解码器。

此软件包使用 Swift 4 工具链的 Swift Package Manager 构建,并且是 Perfect 项目的一部分,但也可以作为一个独立的模块使用。

快速开始

此库为 INI 文件提供了一对 INIEncoderINIDecoder

编码为 INI

import PerfectINI
struct Person: Codable {
  public var name = ""
  public var age = 0
}

struct Place: Codable {
  public var location = ""
  public var history = 0
}

struct Configuration: Codable {
  public var id = 0
  public var tag = ""
  public var person = Person()
  public var place = Place()
}

let rocky = Person(name: "rocky", age: 21)
let hongkong = Place(location: "china", history: 1000)

let conf = Configuration(id: 101, tag: "my notes", person: rocky, place: hongkong)
let encoder = INIEncoder()
let data = try encoder.encode(conf)

编码器的输出结果是一个标准的 Swift Data 对象,内容应该如下所示

id = 101
tag = my notes

[person]
name = rocky
age = 21

[place]
history = 1000
location = china

INI 解码为可解码对象

假设 Configurationdata 已准备就绪

let decoder = INIDecoder()
let config = try decoder.decode(Configuration.self, from: data)
// configuration loaded.

更多信息

有关 Perfect 项目的更多信息,请访问 perfect.org

现在微信订阅号已上线 🇨🇳