Курс Raku / Об’єкти, введення-виведення та винятки / Введення та виведення / Файлові дескриптори / Вправи / Запис через дескриптор
Розв’язання: Запис через дескриптор
Ось один із можливих варіантів розв’язання задачі.
Код
my $fh = open 'out.txt', :w;
$fh.say($_) for 1..3;
$fh.close;
print slurp 'out.txt';🦋 Вихідний код можна знайти у файлі write-with-a-handle.raku.
Вивід
1
2
3Коментарі
openіз прапорцем:wдає дескриптор для запису. Дескриптор лишається відкритим упродовж циклу, тож кожен$fh.sayдодає ще один рядок, — у цьому й перевага дескриптора надspurt, який щоразу відкривав би файл наново.closeскидає дані на диск, тож наступнийslurpзчитує назад усі три рядки.