Create a structure from an xml

Asked

Viewed 41 times

0

I am using the Swxmlhash Framework to read XML and need to create somehow the following structure from XML

Structure to be created:

Catalogo
   Book1
    Autor = Gambardella
    Genre = Computer
   Book1 
   Book2
    Autor = Ralls
    Genre = Fantasy
   Book2

XML I am using

<root>
      <catalog>
        <book id=\"bk101\">
          <author>Gambardella, Matthew</author>
          <title>XML Developer's Guide</title>
          <genre>Computer</genre>
          <price>44.95</price>
          <publish_date>2000-10-01</publish_date>
          <description>An in-depth look at creating applications with XML.</description>
        </book>
        <book id=\"bk102\">
          <author>Ralls, Kim</author>
          <title>Midnight Rain</title>
          <genre>Fantasy</genre>
          <price>5.95</price>
          <publish_date>2000-12-16</publish_date>
          <description>A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world.</description>
      </catalog>
    </root>

Code in Swift

for retorno in dados["root"]["catalog"]["book"]{
 //
}

1 answer

1


Apparently the Catalog is a array of Books, correct? If you already have XML as a dictionary and class Book created, one way to read the dictionary would be the following:

for rawBook in dados["root"]["catalog"] {
    guard let author = rawBook["author"] as? String,
          let genre = rawBook["genre"] as? String else {
              continue
          }
    let book = Book(autor: author, genre: genre)
    //...
}

Browser other questions tagged

You are not signed in. Login or sign up in order to post.