Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: разработка для Web > Содержимое файла из переданного zip-архива


Автор: Paher 3.3.2010, 15:31
Добрый день, уважаемые!!

Получаю через http архив zip.
в этом архиве есть текстовой документ, содержимое которого мне бы хотелось получить в строке.

Используя модуль CGI, как я понял, можно получить дескриптор загруженного архива через 

Код

use CGI

$cgi = new CGI();
$ziparchive = $cgi->param('archive');


Так вот, вопрос в следующем. Как, не создавая промежуточных файлов, получить содержимое файла test.txt в строку $strtxt. Следующий метод не сработал

Код

use Archive::Zip::MemberRead;

$zipreader = Archive::Zip::MemberRead->new($ziparchive, 'test.txt');
$zipreader->read($strtxt);


Автор: shamber 3.3.2010, 15:52
читайте справку к модулю

Код

$fh  = new Archive::Zip::MemberRead($zip, "hello.txt");
  while (defined($line = $fh->getline()))
  {
      print $fh->input_line_number . "#: $line\n";
  }

Автор: Paher 3.3.2010, 16:36
так я тоже пробовал, в ответ получил ошибки 

Can't call method "memberNamed" without a package or object reference at C:/Perl/lib/Archive/Zip/MemberRead.pm line 83

Undefined subroutine &Archive::Zip::MemberRead

Автор: shamber 3.3.2010, 18:03
Paher, у меня прекрасно отработал, посмотрите версию модулей

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)