Dart:
Arbeta med XML
Hur man gör:
Dart inkluderar inte inbyggt stöd för XML-hantering i sitt standardbibliotek, vilket kräver användning av tredjepartspaket. Ett populärt paket är xml
. För att använda det behöver du först lägga till det i din pubspec.yaml
:
dependencies:
xml: ^5.0.0 // Använd den senaste tillgängliga versionen
Importera sedan paketet i din Dart-fil:
import 'package:xml/xml.dart' as xml;
Analysera XML:
Antag att du har en XML-sträng som denna:
<String name="greeting">Hej, världen!</String>
Du kan analysera och läsa XML på följande sätt:
void parseXml(String xmlString) {
final document = xml.XmlDocument.parse(xmlString);
final String content = document.findElements('String').single.getAttribute('name');
print(content); // Utskrift: greeting
}
void main() {
final xmlString = '<String name="greeting">Hej, världen!</String>';
parseXml(xmlString);
}
Skapa XML-dokument:
Det är enkelt att skapa ett nytt XML-dokument med xml
-paketet:
void createXml() {
final builder = xml.XmlBuilder();
builder.processing('xml', 'version="1.0"');
builder.element('greeting', nest: () {
builder.attribute('name', 'hello');
builder.text('Hej, världen!');
});
final xmlDocument = builder.buildDocument();
print(xmlDocument.toXmlString(pretty: true));
}
void main() {
createXml();
}
Utskrift:
<?xml version="1.0"?>
<greeting name="hello">Hej, världen!</greeting>
Förfråga och Modifiera XML:
För att hitta eller ändra element kan du använda XPath-liknande metoder:
void modifyXml(String xmlString) {
var document = xml.XmlDocument.parse(xmlString);
var greeting = document.findAllElements('greeting').first;
// Modifiera 'name'-attributet
greeting.setAttribute('name', 'greeting_modified');
// Lägga till ett nytt barn-element
greeting.children.add(xml.XmlElement(xml.XmlName('message'), [], [xml.XmlText('Hejdå!')]));
print(document.toXmlString(pretty: true));
}
void main() {
final xmlString = '<greeting name="hello">Hej, världen!</greeting>';
modifyXml(xmlString);
}
Utskrift:
<greeting name="greeting_modified">
Hej, världen!
<message>Hejdå!</message>
</greeting>
Dessa exempel demonstrerar grundläggande operationer för att arbeta med XML i Dart. Med xml
-paketet kan du analysera, skapa och manipulera XML-dokument för att uppfylla dina applikationskrav.