perl6.suОсвоим perl6 к 2015 году!

close


       Открывать файл для записи следует с определенным ключом (w).
    
#!/usr/bin/perl6
my $file=open 'out.tmp',:w;
$file.say('ave mundus');
$file.close;
$file=open 'out.tmp'; # проверяем
$file.get.say;
$file.close;
ave mundus

       Видимо, такое открытие файла для записи удаляет всё прежде имевшееся в нём. Проверим.
    
#!/usr/bin/perl6
my $file=open 'out.tmp',:w; $file.say('ave mundus'); $file.close;
$file=open 'out.tmp',:w; $file.say('ave mundus'); $file.close;
$file=open 'out.tmp',:w; $file.say('ave mundus'); $file.close;
my $content=slurp 'out.tmp';
$content.say;
ave mundus

       Так мы и думали. Видно, кстати, что писали мы просто 'ave mundus', а получили назад оный же только плюс перевод строки. Понятно, что это say. Однако...
       N.B. Никогда не надо забывать про возможные коллизии с наличием-отсутствием символа перевода строки.
       А как теперь дописывать в уже имеющийся файл?
# mutatio postrema: 17 Sep 2010

   close, get, open, say, slurp      charta situs       nota LXV   

    RSS     stdin@perl6.su    © Alexius Karmanov, 2010-2011