Dart:
Werken met XML
Hoe te:
Dart bevat geen ingebouwde ondersteuning voor XML-verwerking in zijn standaardbibliotheek, wat het noodzakelijk maakt om gebruik te maken van pakketten van derden. Een populair pakket is xml
. Om het te gebruiken, moet je het eerst toevoegen aan je pubspec.yaml
:
dependencies:
xml: ^5.0.0 // Gebruik de laatste beschikbare versie
Importeer vervolgens het pakket in je Dart-bestand:
import 'package:xml/xml.dart' as xml;
XML Parsen:
Stel dat je een XML-reeks zoals deze hebt:
<String name="greeting">Hallo, wereld!</String>
Je kunt de XML als volgt parsen en lezen:
void parseXml(String xmlString) {
final document = xml.XmlDocument.parse(xmlString);
final String content = document.findElements('String').single.getAttribute('name');
print(content); // Outputs: greeting
}
void main() {
final xmlString = '<String name="greeting">Hallo, wereld!</String>';
parseXml(xmlString);
}
XML-documenten maken:
Een nieuw XML-document maken is eenvoudig met het xml
pakket:
void createXml() {
final builder = xml.XmlBuilder();
builder.processing('xml', 'version="1.0"');
builder.element('greeting', nest: () {
builder.attribute('name', 'hallo');
builder.text('Hallo, wereld!');
});
final xmlDocument = builder.buildDocument();
print(xmlDocument.toXmlString(pretty: true));
}
void main() {
createXml();
}
Output:
<?xml version="1.0"?>
<greeting name="hallo">Hallo, wereld!</greeting>
XML Bevragen en Wijzigen:
Om elementen te vinden of te wijzigen, kun je XPath-achtige methoden gebruiken:
void modifyXml(String xmlString) {
var document = xml.XmlDocument.parse(xmlString);
var greeting = document.findAllElements('greeting').first;
// Het 'name' attribuut wijzigen
greeting.setAttribute('name', 'greeting_modified');
// Een nieuw kind-element toevoegen
greeting.children.add(xml.XmlElement(xml.XmlName('message'), [], [xml.XmlText('Tot ziens!')]));
print(document.toXmlString(pretty: true));
}
void main() {
final xmlString = '<greeting name="hallo">Hallo, wereld!</greeting>';
modifyXml(xmlString);
}
Output:
<greeting name="greeting_modified">
Hallo, wereld!
<message>Tot ziens!</message>
</greeting>
Deze voorbeelden demonstreren basisbewerkingen voor het werken met XML in Dart. Met het xml
pakket kun je XML-documenten parsen, maken en manipuleren om te voldoen aan de vereisten van je applicatie.