Dart:
Работа с YAML

Как:

В Dart работа с YAML обычно включает использование сторонней библиотеки, поскольку в самом языке отсутствуют встроенные возможности разбора YAML. Популярным выбором является пакет yaml. Для начала вам нужно добавить этот пакет в ваш pubspec.yaml:

dependencies:
  yaml: ^3.1.0

Не забудьте выполнить команду pub get, чтобы загрузить пакет.

Чтение YAML

Чтобы прочитать файл YAML, сначала импортируйте пакет yaml, а затем используйте функцию loadYaml:

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

void main() {
  final file = File('config.yaml').readAsStringSync();
  final yamlMap = loadYaml(file);

  print(yamlMap['name']); // Вывод: John Doe
}

Предположим, ваш файл config.yaml выглядит так:

name: John Doe
age: 30

Запись YAML

Хотя пакет yaml отлично подходит для разбора, он не поддерживает запись YAML. Для этого вам, возможно, придется вручную преобразовать ваши данные в YAML или использовать другой пакет, если таковой имеется. Или, что проще, управляйте преобразованиями ваших данных и выводите их в виде строк, соответствующих синтаксису 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)); // Вывод: name: Jane Doe
                             //         age: 29
}

Это примитивный подход и может не подходить для сложных структур данных или специальных возможностей YAML. Для более сложных потребностей, возможно, придется искать или вносить свой вклад в более комплексный пакет для Dart.