|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Evgenia Firsova 2:5020/400 27 Jun 2001 12:15:13 To : All Subject : проблема с хэшем? -------------------------------------------------------------------------------- Здравствуйте. помогите, пожалуйста, разобраться со следующей проблемой. пишу: data_hash($file_name); # открываем файл data_add($file_name,'лллл',113); # функция открывает файл и читает данные в хэш # входные параметры: имя файла sub data_hash() { open(KAT_FILE,"< $_[0]"); while (<KAT_FILE>) { chomp; ($num,$txt,$price)=split(/:/,$_); $data{$num}=$txt.":".$price; } close(KAT_FILE); return %data; } # функция добавления записи в файл # входные параметры: имя файла, строка описания, строка цены sub data_add() { data_hash($_[0]); $data{1+scalar keys %data}=$_[1].":".$_[2]; $i=1; foreach $num (sort {$data{$a} cmp $data{$b}} keys %data) { $new_data{$i}=$data{$num}; $i++; } %data=%new_data; open(KAT_FILE,"> $_[0]"); foreach $num (keys %data) { print KAT_FILE $num.":".$data{$num}."\n"; } close(KAT_FILE); return %data; } в логах сервера появляется следующая запись: Too many arguments for main::data_hash at step1to2.pl line 69, near "])" line 69 - это строка data_hash($_[0]); в процедуре data_add() подскажите, в чём ошибка? заранее огромное спасибо за помощь Евгения --- ifmail v.2.15dev5 * Origin: Peterlink News System (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/207539908407f.html, оценка из 5, голосов 10
|