J'ai essayé d'analyser les données xml que j'ai. Mais je ne sais pas ce que je fais pas capable d'imprimer les données à l'écran ainsi que dans la console.ios swift 3 xml analyse et affichage des données
pour mon api:
Request-type : GET
Content-type : application/xml
url : www.example.com/data
ici ma structure réelle 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>
Et mon code que j'ai essayé:
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) {
}
}
Maintenant l'écran que je dois montrer est comme ceci:
**QUESTION LABEL
ANSWER 1
ANSWER 2
ANSWER 3
ANSWER 4**
i besoin donc d'afficher chaque question d'identité et la réponse de cette question particulière ..
J'ai essayé beaucoup de recherche dans google pas en mesure de trouver la solution après. Toute aide serait utile.
Merci d'avance!
Il est préférable de convertir xml en json via une bibliothèque tierce. https://github.com/amarcadet/XMLReader puis de traiter avec json. –
@hament miglani comment puis-je le convertir à partir de mon code ou que shoyld être une partie différente ?? comme j'ai besoin de mon URL xml pour convertir ou devrais-je besoin d'analyser, puis devrais-je besoin de faire convertir en JSON .. si possible pouvez-vous me montrer un exemple de code ?? –
Comment obtenir ce XML dans une réponse API? –