|
| Kontrol af chars og truncate fil Fra : Jesper |
Dato : 30-07-03 12:29 |
|
Jeg har nogle store filer > 10MB, og vil nu gerne konrolere om det
sidste eller eventuelt de to sidste karaktere er "\n", "\r", "\r\n" hvis
de er vil jeg gerne fjerne dem. Jeg bruger i øjeblikket en metode hvor
jeg henter filen ind i en variabel og kontrolerer på de sidste karaktere
og eventuelt sletter de, men det går laaangsomt når filerne er så
store. Er der nogen her der kan komme på en beddre løsning??
| |
Thomas Lindgaard (30-07-2003)
| Kommentar Fra : Thomas Lindgaard |
Dato : 30-07-03 17:02 |
|
Jesper wrote:
> Jeg har nogle store filer > 10MB, og vil nu gerne konrolere om det
> sidste eller eventuelt de to sidste karaktere er "\n", "\r", "\r\n" hvis
> de er vil jeg gerne fjerne dem. Jeg bruger i øjeblikket en metode hvor
> jeg henter filen ind i en variabel og kontrolerer på de sidste karaktere
> og eventuelt sletter de, men det går laaangsomt når filerne er så
> store. Er der nogen her der kan komme på en beddre løsning??
>
Hvudden gør du det? Noget ala følgende:
$f = fopen('meget_stor_fil.txt', 'rw');
fseek($f, -2, SEEK_END);
// Tjek for \n, \r og \r\n og slet eventuelt
eller noget ala følgende:
$f = file_get_contents('meget_stor_fil.txt');
// Tjek for \n, \r og \r\n og slet eventuelt
Første løsning er hurtigst (og det siger jeg uden at have testet noget
som helst, så det passer muligvis ikke) :)
Mvh.
/Thomas
| |
Benny Nissen (30-07-2003)
| Kommentar Fra : Benny Nissen |
Dato : 30-07-03 17:12 |
|
> Jeg har nogle store filer > 10MB, og vil nu gerne konrolere om det
> sidste eller eventuelt de to sidste karaktere er "\n", "\r", "\r\n" hvis
> de er vil jeg gerne fjerne dem.
Har du kigget på r_trim ?
http://dk2.php.net/manual/en/function.rtrim.php
Du skal dog stadigt have fat i filen for at bruge funktionen.
--
Benny Nissen
| |
|
|