Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]parsowanie pliku txt, Jak odczytać wybrany zakres linii z pliku txt ?
fiasko
post
Post #1





Grupa: Zarejestrowani
Postów: 243
Pomógł: 1
Dołączył: 1.06.2010

Ostrzeżenie: (0%)
-----


Mam plik baza.txt, który waży 45 MB i chcę z niego odczytać 100 linii zawrtości zaczynając odczyt od linii onumerze 10000.

Jakiej funkcji użyć do odczytu i jak czytać ?

Dodam tylko, że file() deklaruje mi tyle pamięci, że nie da się załadować tak dużego pliku do pamięci .
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
abort
post
Post #2





Grupa: Zarejestrowani
Postów: 590
Pomógł: 107
Dołączył: 25.10.2011

Ostrzeżenie: (0%)
-----


Możesz to zrobić, ale weź pod uwagę, że jeśli chcesz robić to co chwilę, to będzie to strasznie nieefektywne i dobijające system. Zainteresuj się funkcjami: fopen i fread.
Idea jest prosta:
1. poprzez fopen otwierasz plik w trybie do odczytu
2. w pętli odczytujesz kolejne linie (i nie zapisujesz ich nigdzie!!!), których będzie u Ciebie 9999.
3. Wewnętrzny wskaźnik pliku stoi na linii 10000.
4. Czytasz linię i zachowujesz
5. punkt 4 powtarzasz tak długo, jak długo potrzebujesz
6. Zamykasz plik

Ale fakt faktem, Spawnm ma rację: jakaś baza SQL by się już bardzo przydała, choćby sqlite.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 31.12.2025 - 19:10