Forum Webscript.Ru

Программирование => Perl => Тема начата: metton от 20 Августа 2003, 22:13:10

Название: Как можно позиционировать STDIN?
Отправлено: metton от 20 Августа 2003, 22:13:10
Как можно позиционировать STDIN?
Пытаюсь вот так:

my $qs;
read(STDIN, $qs, $ENV{\'CONTENT_LENGTH\'}-1);
print \'
[1]\'.$qs.\'
\';

seek(STDIN,0,1);

read(STDIN, $qs, $ENV{\'CONTENT_LENGTH\'}-23);
print \'
[2]\'.$qs.\'
\';

Не получается...


Заранее спасибо.
Название: Как можно позиционировать STDIN?
Отправлено: Mog. от 21 Августа 2003, 07:33:32
А разве можно seek\'ом STDIN позиционировать?
Название: Как можно позиционировать STDIN?
Отправлено: metton от 21 Августа 2003, 23:41:27
2Mog.
Вот я и хочу узнать можно ли seek-ом или вообще чем-нибудь?
Название: Как можно позиционировать STDIN?
Отправлено: metton от 23 Августа 2003, 03:44:40
Как же всё-таки позиционировать STDIN?
Название: Как можно позиционировать STDIN?
Отправлено: Mog. от 24 Августа 2003, 08:03:26
Сдается, что никак не позиционируется STDIN. Да и смысл то какой в этом ? Данные то там меняются непрерывно. Проще "позиционировать" полученные из этого потока данные.
Название: Как можно позиционировать STDIN?
Отправлено: metton от 24 Августа 2003, 13:27:45
2Mog.
Вопрос возник когда я, считав, пост данные, попытался считать их ещё раз. Не получилось - понял, что указатель уже на eof. Пробовал функции, которые "убеждают" указатель, что eof еще не наступил. Всё равно не получилось.
Вопрос был чисто теоретический.
Естесственно, удобнее считать данные в переменную, а потом ей пользоваться.