Leggere file TOML in Dart
In questo articolo vediamo come leggere un file TOML in Dart.
Useremo la libreria toml.
Per l'installazione:
dart pub add toml
Questo il file TOML:
title = "Test TOML"
version = "1.0.0"
[database]
host = "localhost"
port = 5432
username = "root"
password = "password"
databases = ["db_test"]
pool_size = 10
ssl_enabled = true
[server]
host = "0.0.0.0"
port = 8080
debug = false
allowed_hosts = ["*"]
[logging]
level = "INFO"
format = "%(asctime)s - %(levelname)s - %(message)s"
handlers = ["console", "file"]
[cache]
enabled = true
ttl = 3600
max_size = 1000
[features]
enable_api = true
rate_limit = 100
Qui un pò di codice:
import 'dart:io';
import 'package:toml/toml.dart';
void main() async {
final file = File('test.toml');
final content = await file.readAsString();
final document = TomlDocument.parse(content);
final config = document.toMap();
print('Title: ${config['title']}');
print('Version: ${config['version']}');
print('\nDatabase:');
print(' Host: ${config['database']['host']}');
print(' Port: ${config['database']['port']}');
print(' Username: ${config['database']['username']}');
print(' Databases: ${config['database']['databases']}');
print(' SSL: ${config['database']['ssl_enabled']}');
print('\nServer:');
print(' Host: ${config['server']['host']}');
print(' Port: ${config['server']['port']}');
print(' Debug: ${config['server']['debug']}');
print('\nLogging:');
print(' Level: ${config['logging']['level']}');
print(' Handlers: ${config['logging']['handlers']}');
print('\nCache:');
print(' Enabled: ${config['cache']['enabled']}');
print(' TTL: ${config['cache']['ttl']}');
print('\nFeatures:');
print(' API: ${config['features']['enable_api']}');
print(' Rate Limit: ${config['features']['rate_limit']}');
final dbHost = config['database']['host'];
final dbPort = config['database']['port'];
print('\nConnessione a: $dbHost:$dbPort');
}
Enjoy!
dart toml
Commentami!