Dart:
Lavorare con YAML
Come fare:
In Dart, lavorare con YAML comporta tipicamente l’uso di una libreria di terze parti poiché il linguaggio non include capacità di parsing YAML integrate. Una scelta popolare è il pacchetto yaml
. Per iniziare, è necessario aggiungere questo pacchetto al proprio pubspec.yaml
:
dependencies:
yaml: ^3.1.0
Ricordarsi di eseguire pub get
per recuperare il pacchetto.
Leggere YAML
Per leggere un file YAML, innanzitutto, importare il pacchetto yaml
e poi utilizzare la funzione loadYaml
:
import 'package:yaml/yaml.dart';
import 'dart:io';
void main() {
final file = File('config.yaml').readAsStringSync();
final yamlMap = loadYaml(file);
print(yamlMap['name']); // Output: John Doe
}
Assumendo che il tuo file config.yaml
appaia così:
name: John Doe
age: 30
Scrivere YAML
Sebbene il pacchetto yaml
sia ottimo per il parsing, non supporta la scrittura di YAML. Per questo, potrebbe essere necessario convertire manualmente i propri dati in YAML o utilizzare un altro pacchetto se disponibile. Oppure, più direttamente, gestire le trasformazioni dei dati e produrli come stringhe che corrispondono alla sintassi YAML:
Map<String, dynamic> data = {
'name': 'Jane Doe',
'age': 29,
};
String toYamlString(Map<String, dynamic> map) {
String yaml = '';
map.forEach((key, value) {
yaml += '$key: $value\n';
});
return yaml;
}
void main() {
print(toYamlString(data)); // Output: name: Jane Doe
// age: 29
}
Questo è un approccio elementare e potrebbe non essere adatto a strutture di dati complesse o a funzionalità speciali di YAML. Per esigenze sofisticate, potrebbe essere necessario cercare o contribuire a un pacchetto Dart più completo.