12.12. Czytanie i zapisywanie plików konfiguracyjnych

Problem

Chcemy zapisać konfigurację aplikacji na dysku, w formacie możliwym do przetwarzania w języku Ruby, a jednocześnie takim, który można łatwo modyfikować za pomocą edytora tekstu.

Rozwiązanie

Dane konfiguracyjne można umieścić w strukturze danych i zapisać ją na dysk w formacie YAML. Jeśli wykorzystujemy jedynie wbudowane typy danych języka Ruby (łańcuchy, tablice, hasze itp.), pliki YAML będą miały postać czytelną dla ludzi.

require 'yaml' configuration = { 'color' => 'blue', 'font' => 'Septimus', 'font-size' => 7 } open('text.cfg', 'w') { |f| YAML.dump(configuration, f) } open('text.cfg') { |f| puts f.read } # --- # font-size: 7 # color: blue # font: Septimus open('text.cfg') ...

Get Ruby. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.