Latest 1.0
Homepage https://github.com/Mozharovsky/XMLParser
License MIT
Platforms ios 8.0, requires ARC
Authors

Overview

Description

XMLParser lets you convert a pure Swift dictionary into XML string and vice versa.

Requirements

  • Swift 2 (Xcode 7+)
  • iOS 8+
  • ARC

Installation

Cocoa Pods

pod 'XMLParser', '~> 1.0'

Usage

Parsing an XML string from a Dictionary

let body = [
    "request" : [
        "meta" : [
            "type" : "getOrder",
            "date" : "2015-08-29 12:00:00",
            "device_name" : "iPhone 6 Plus",
            "device_os_version" : "iOS 9"
        ]
    ],

    "encryption" : [
        "type" : "RSA"
    ]
]

let header = "<?xml version="1.0" encoding="UTF-8"?>n"
let result = XMLParser.sharedParser.encode(body, header: header)
print(result)

Result

<?xml version="1.0" encoding="UTF-8"?>
<encryption>
   <type>RSA</type>
</encryption>
<request>
   <meta>
      <type>getOrder</type>
      <device_os_version>iOS 9</device_os_version>
      <date>2015-08-29 12:00:00</date>
      <device_name>iPhone 6 Plus</device_name>
   </meta>
</request>

Associated tags

E.g. <td class='achievements'>0</td>

let data = [
    "tr" : [
        XMLTag(header: "td", name: "class", value: "num") : 1,
        XMLTag(header: "td", name: "class", value: "achievments") : 0,
        XMLTag(header: "td", name: "class", value: "sum") : 205
    ]
]

let result = XMLParser.sharedParser.encode(data)
print(result)

Result

<tr>
   <td class='achievments'>0</td>
   <td class='num'>1</td>
   <td class='sum'>205</td>
</tr>

==========

Extracting data from an XML converted string

let convertedString = "<request><meta><type>getOrder</type><date>2015-08-29 12:00:00</date><device_name>iPhone 6 Plus</device_name><device_os_version>iOS 9</device_os_version></meta></request><encryption><type>RSA</type></encryption>"
let result = XMLParser.sharedParser.decode(convertedString)
print(result)

Result

[
  type: [getOrder, RSA], 
  device_os_version: [iOS 9], 
  date: [2015-08-29 12:00:00], 
  device_name: [iPhone 6 Plus]
]

Author

Eugene Mozharovsky (@DottieYottie)

License

Latest podspec

{
    "name": "XMLParser",
    "version": "1.0",
    "summary": "A lightweight XMLParser for assembling and parsing XML values written for iOS 8+ in Swift 2.",
    "homepage": "https://github.com/Mozharovsky/XMLParser",
    "license": {
        "type": "MIT",
        "file": "LICENSE"
    },
    "authors": {
        "Eugene Mozharovsky": "[email protected]"
    },
    "social_media_url": "https://twitter.com/DottieYottie",
    "platforms": {
        "ios": "8.0"
    },
    "source": {
        "git": "https://github.com/Mozharovsky/XMLParser.git",
        "tag": "1.0"
    },
    "source_files": "XMLParser/*.swift",
    "requires_arc": true
}

Pin It on Pinterest

Share This