XMLパーサーは、極論すると、これで終わる。簡単!
こんな感じ。
import SwiftyXMLParser if let path: String = Bundle.main.path(forResource: "hoge", ofType: "txt") { do { // ファイルの内容を取得する let content = try String(contentsOfFile: path) // print("content: \(content)") let xml = try XML.parse(content) var i = 0 while true { guard let str = xml["root", "data", i, "value"].text else { break; } print("\(str)") i += 1 } print("ループ終わり") } catch { print("ファイルの内容取得時に失敗") } // do } else { print("指定されたファイルが見つかりません") } // if let
真面目にやると結構大変です。XMLParser()を使うのだけれど、 要素(エレメント、属性)が1つ見つかる度に、XMLParserDelegateにあるparse(..)という名前の 関数が呼び出されて、結果を取り出して自分で使えるように加工しないといけません。 この辺りを全部やってくれるのが、上記のyahoojapanのコードです。