2013-05-18 7 views
2

OK У меня есть файл, который содержит более 5000 имен, по одной строке; Файл является txt-файлом, созданным с помощью microsoft excel. Следующий код дал мне выход 1.Perl читает только последнюю строку моего файла?

open FILEHANDLE, "< listname_FC2-3ss>0.txt"; 
chomp (my @genelist = <FILEHANDLE>); 
close FILEHANDLE; 
print "the number of item in the list is "; 
print scalar @genelist; 

Я использую '10 Macbook Air, Perl 5.12.I пытался вывести список и его последнюю строку файла. Но я попробовал код на крошечной версии из 10 имен, которые я сам извлек вручную, и это сработало отлично, поэтому я считаю, что это связано с разделителем?

Пожалуйста, помогите.

Ian

+1

Что делает 'wc listname_FC2-3ss \> 0.txt' сказать? –

+0

0 7486 142233 listname_FC2-3ss> 0.txt –

+0

Как каждая строка отформатирована в вашем файле? – hwnd

ответ

5

Try с

local $/ = "\r"; 

перед чтением файла. Он изменяет разделитель входных данных на символ "\r".

+0

спасибо, у меня такая же проблема, но в консоли отладки Xcode. Не знаю, что Mac использует '\ r', а не' \ n' – gaussblurinc

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