Ich habe versucht, die Xml-Daten zu analysieren, die ich habe. Aber ich weiß nicht, was ich nicht in der Lage bin, die Daten im Bildschirm sowie in der Konsole zu drucken.ios swift 3 xml Parsing und Anzeigen der Daten
für meine api:
Request-type : GET
Content-type : application/xml
url : www.example.com/data
hier meine tatsächliche Struktur xml:
<?xml version='1.0' encoding='UTF-8'?>
<map>
<data>
<list>
<item>
<map>
<answerChoice>
<list>
<item>option1</item>
<item>option2</item>
<item>option3</item>
<item>option4</item>
</list>
</answerChoice>
<assessmentID>ajhsdja</assessmentID>
<explanation>Explanations.</explanation>
<question>Which is ur name?</question>
<questionType>multiple</questionType>
<correctAnswer>option1</correctAnswer>
</map>
</item>
<item>
<map>
<answerChoice>
<list>
<item>option1</item>
<item>option2</item>
<item>option3</item>
<item>option4</item>
</list>
</answerChoice>
<assessmentID>ajhsdja</assessmentID>
<explanation>Explanations.</explanation>
<question>Which is ur name?</question>
<questionType>multiple</questionType>
<correctAnswer>option1</correctAnswer>
</map>
</item>
<item>
<map>
<answerChoice>
<list>
<item>option1</item>
<item>option2</item>
<item>option3</item>
<item>option4</item>
</list>
</answerChoice>
<assessmentID>ajhsdja</assessmentID>
<explanation>Explanations.</explanation>
<question>Which is ur name?</question>
<questionType>multiple</questionType>
<correctAnswer>option1</correctAnswer>
</map>
</item>
<item>
<map>
<answerChoice>
<list>
<item>option1</item>
<item>option2</item>
<item>option3</item>
<item>option4</item>
</list>
</answerChoice>
<assessmentID>ajhsdja</assessmentID>
<explanation>Explanations.</explanation>
<question>Which is ur name?</question>
<questionType>multiple</questionType>
<correctAnswer>option1</correctAnswer>
</map>
</item>
<item>
<map>
<answerChoice>
<list>
<item>option1</item>
<item>option2</item>
<item>option3</item>
<item>option4</item>
</list>
</answerChoice>
<assessmentID>ajhsdja</assessmentID>
<explanation>Explanations.</explanation>
<question>Which is ur name?</question>
<questionType>multiple</questionType>
<correctAnswer>option1</correctAnswer>
</map>
</item>
</list>
</data>
</map>
Und mein Code, ich versuchte:
import UIKit
class ViewController: UIViewController,XMLParserDelegate {
var strXMLData:String = ""
var currentElement:String = ""
var passData:Bool=false
var passName:Bool=false
var parser = XMLParser()
@IBOutlet var questNameData : UILabel! = nil
@IBAction var button1 : UIButton! = nil
@IBAction var button2 : UIButton! = nil
@IBAction var button3 : UIButton! = nil
@IBAction var button4 : UIButton! = nil
override func viewDidLoad() {
super.viewDidLoad()
let url:String="http://exampe.com/exc"
let urlToSend: URL = URL(string: url)!
// Parse the XML
parser = XMLParser(contentsOf: urlToSend)!
parser.delegate = self
let success:Bool = parser.parse()
if success {
print("parse success!")
} else {
print("parse failure!")
}
}
func parser(_ parser: XMLParser, didStartElement elementName: String, namespaceURI: String?, qualifiedName qName: String?, attributes attributeDict: [String : String]) {
}
func parser(_ parser: XMLParser, didEndElement elementName: String, namespaceURI: String?, qualifiedName qName: String?) {
}
func parser(_ parser: XMLParser, foundCharacters string: String) {
}
func parser(_ parser: XMLParser, parseErrorOccurred parseError: Error) {
}
}
nun der Bildschirm, ich brauche zu zeigen ist wie folgt:
**QUESTION LABEL
ANSWER 1
ANSWER 2
ANSWER 3
ANSWER 4**
Also muss ich jede id Frage anzuzeigen und die Antwort dieser speziellen Frage ..
ich viel Suche nicht in der Lage in Google versucht, die Lösung danach zu finden. Jede Hilfe wäre nützlich.
Vielen Dank im Voraus!
Erste hinzufügen, um diese XMLReader
Dateien in Ihrem Projekt:
Besser, XML zu Json über 3rd Party Bibliothek zu konvertieren. https://github.com/amarcadet/XMLReader und dann mit json umgehen. –
@heilung miglani wie kann ich es von meinem code konvertieren oder dass shoyld ein anderes teil sein ?? wie ich brauche meine XML-URL zu konvertieren oder sollte ich analysieren müssen und dann sollte ich tun, um zu konvertieren json .. wenn möglich können Sie mir einige Codebeispiel zeigen ?? –
Sie erhalten dieses XML in einer API-Antwort? –