Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как прочитать любую строку из файла не открывая его
 
 автор: Bronepoez[)   (16.10.2006 в 05:35)
 
 

Как прочитать любую строку из файла не открывая его? Конкретная цифра не известна. Она записана в переменной.

   
 
 автор: skor   (16.10.2006 в 05:45)   письмо автору
 
   для: Bronepoez[)   (16.10.2006 в 05:35)
 

без открытия не как не прочитаешь....

   
 
 автор: kasmanaft   (16.10.2006 в 06:20)   письмо автору
 
   для: Bronepoez[)   (16.10.2006 в 05:35)
 

Что подразумевается по "открытием" ?

   
 
 автор: Bronepoez[)   (16.10.2006 в 07:06)
 
   для: kasmanaft   (16.10.2006 в 06:20)
 

Не правильно выразился. Не получаю из него всю информацию. А только строку.

   
 
 автор: kasmanaft   (16.10.2006 в 07:36)   письмо автору
 
   для: Bronepoez[)   (16.10.2006 в 07:06)
 

Как читаете, какая цель?

... fgets читает одну строку ...
можно попробовать fread

   
 
 автор: Bronepoez[)   (16.10.2006 в 11:39)
 
   для: kasmanaft   (16.10.2006 в 07:36)
 

Фгет читает строку - верно. Но как сделать, чтобы он прочитал, допустим 1000ую строку?

   
 
 автор: Trianon   (16.10.2006 в 11:41)   письмо автору
 
   для: Bronepoez[)   (16.10.2006 в 11:39)
 

пропустить первые 999.

   
 
 автор: Bronepoez[)   (16.10.2006 в 12:48)
 
   для: Trianon   (16.10.2006 в 11:41)
 

как?

   
 
 автор: Trianon   (16.10.2006 в 13:10)   письмо автору
 
   для: Bronepoez[)   (16.10.2006 в 12:48)
 

$n = 1000;
while($n--) $s = fgets($f);
echo $s;

   
 
 автор: Bronepoez[)   (16.10.2006 в 13:29)
 
   для: Trianon   (16.10.2006 в 13:10)
 

А нельзя как-нибудь сразу переместиться на эту строку?

   
 
 автор: kasmanaft   (16.10.2006 в 13:52)   письмо автору
 
   для: Bronepoez[)   (16.10.2006 в 13:29)
 

На строку нет ... можно переместиться на N байт, используя fseek

   
 
 автор: Trianon   (16.10.2006 в 14:29)   письмо автору
 
   для: Bronepoez[)   (16.10.2006 в 13:29)
 

Только если Вам известна точная позиция её начала.

   
 
 автор: skor   (16.10.2006 в 21:50)   письмо автору
 
   для: Bronepoez[)   (16.10.2006 в 13:29)
 

можно файл со строками загнать в массив и взять 1000 елемент $string[1000];

   
 
 автор: kasmanaft   (16.10.2006 в 22:53)   письмо автору
 
   для: skor   (16.10.2006 в 21:50)
 

но лучше такого не делать :)

   
 
 автор: Trianon   (17.10.2006 в 09:13)   письмо автору
 
   для: skor   (16.10.2006 в 21:50)
 

он туда может банально не поместиться.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования