在纯 Swift 4 中进行轻量级 XML 解析。无需 Foundation 框架。无任何依赖。
SwiftXML 是一个事件驱动的 XML 解析器,旨在替代 Foundation 框架的 NS
XMLParser
类。SwiftXML 可以在 Linux 上运行。SwiftXML 不做任何封装。它直接解析 XML,逐字符解析。并且 API 简单易用。
protocol XMLParser
{
mutating
func handle_data(data:[Unicode.Scalar])
mutating
func handle_tag_start(name:String, attributes:[String: String])
mutating
func handle_tag_empty(name:String, attributes:[String: String])
mutating
func handle_tag_end(name:String)
mutating
func handle_processing_instruction(target:String, data:[Unicode.Scalar])
mutating
func handle_error(_ message:String, line:Int, column:Int)
}
extension XMLParser
{
mutating
func parse(_ str:String)
mutating
func parse(path:String)
}
使用以下方式导入包
import XML
支持的 XML 功能特性
<
、>
、'
、"
、&
)<
、>
、'
、"
、&
)CDATA
区段SwiftXML 会将您的 XML 字符串标记化为标签和数据。它不会构建任何树状结构。
请参阅 tests.swift
文件以获取使用示例。