Elixir:
Читання текстового файлу

Як це зробити:

Elixir використовує модуль File для читання файлів. Ось базовий приклад:

# Прочитаємо весь файл разом
{:ok, data} = File.read("filename.txt")
IO.puts(data)

# Читаємо файл по рядках
File.stream!("filename.txt")
|> Enum.each(&IO.puts(&1))

Припустимо, у файлі filename.txt є такий вміст:

Привіт, світ!
Це текстовий файл.

Вихід:

Привіт, світ!
Це текстовий файл.

Глибше занурення

У Еліксирі, читання файлу, це взаємодія з операційною системою через BEAM (Erlang Virtual Machine). Історично, модулі для роботи з файлами у Ерланг були оптимізовані під високу проізводительність.

Альтернативами є:

  • Використання модуля :file із Erlang.
  • Підключення зовнішніх утиліт за допомогою System.cmd/3.

Для великих файлів рекомендують читати по рядках, а не завантажувати весь файл в пам’ять. Еліксир використовує ліниві перечислення (Stream), дозволяючи ефективно працювати з великими даними.

Дивіться також