2013-07-31 5 views
1

В скрипте Perl мне нужно открыть конкретный файл, но если этот файл не открывается (поврежден и т. Д.), Тогда мне нужно создать новый файл с новое имя. Если я не смогу сделать этот новый файл, я должен просто умереть, потому что что-то явно не так. Вот псевдокод, что я хочу сделать:Открыть существующий файл или создать новый с другим именем

if (!(open my $testFile, q{>>}, "C:\foo\bar\log.csv")) { 
    open my $testFile, q{>>}, "C:\foo\bar\log1.csv"; 
} 
if (!$testFile) { 
    die $!; 
} 

Как я могу сделать этот тип «попробуй поймать» поведения в Perl?

ответ

3

один из миллионов способов сделать это:

my $fh; 
open $fh, '<', 'C:\foo\bar\log.csv' or open $fh, '<', 'C:\foo\bar\log1.csv' or die 'Can not open any file!'; 
+1

Интересно ... никогда не видел «состояние или состояние или состояние» раньше! – MattDavBen

Смежные вопросы