Dart:
Arbeiten mit TOML

Wie geht das:

Dart bietet keine integrierte Unterstützung für TOML, aber Sie können mit TOML-Dateien arbeiten, indem Sie Drittanbieterpakete wie toml verwenden. Fügen Sie zunächst toml zu Ihrer pubspec.yaml hinzu:

dependencies:
  toml: ^0.10.0

TOML lesen

Um eine TOML-Datei zu lesen, nehmen wir an, Sie haben eine einfache Konfigurationsdatei config.toml:

[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002 ]
connection_max = 5000
enabled = true

Sie können diese TOML-Datei in Dart wie folgt parsen:

import 'dart:io';
import 'package:toml/toml.dart';

void main() async {
  var content = await File('config.toml').readAsString();
  var doc = TomlDocument.parse(content);
  var data = doc.toMap();

  print(data['database']); // Druckt den Abschnitt 'database'
}

Das druckt:

{server: 192.168.1.1, ports: [8001, 8001, 8002], connection_max: 5000, enabled: true}

TOML schreiben

Um TOML-Inhalte zu erstellen, verwenden Sie den von dem toml-Paket bereitgestellten TomlBuilder:

import 'package:toml/toml.dart';

void main() {
  final builder = TomlBuilder();

  builder.table('database')
    ..set('server', '192.168.1.1')
    ..set('ports', [8001, 8001, 8002])
    ..set('connection_max', 5000)
    ..set('enabled', true);

  var tomlString = builder.build().toString();
  print(tomlString);
}

Das generiert und druckt eine Zeichenfolgendarstellung des TOML-Inhalts, die der unserer config.toml-Datei sehr ähnlich ist:

[database]
server = "192.168.1.1"
ports = [8001, 8001, 8002]
connection_max = 5000
enabled = true

Diese Beispiele zeigen, wie Sie in TOML-Dateien lesen und schreiben können, was es einfach macht, mit Konfigurationsdaten in Ihren Dart-Anwendungen zu arbeiten.