Autor Zpráva
kordy
Profil
Dobrý večer
Mám soubor, kde jsou data. Z něj potřebuju načíst každý druhý řádek, vím, že by to dalo nějak manuálně pokopírovat...
Ale existuje nějákej způsob jak si to zjednodušit? Neexistuje nějákej programátosrkej fígl? :)

Děkuji Kordy
Alphard
Profil
Číst všechny a liché zahazovat. To snad není problém. Modulo znáte?
kordy
Profil
Neznám, popravdě z toho nejsem moc moudrý ani po přečtení... :)
Chvilku pogooglim a kdyžtak se ozvu, děkuji za naťuknutí.
jenikkozak
Profil
kordy:
Příklad, který je vložený na odkázané stránce, právě zkoumá, zda je proměnná $counter sudá. :)
Joker
Profil
kordy:
Ono s obsahem souboru na disku lze dělat vlastně jen čtyři operace: Otevřít, zavřít, číst z aktuální pozice (a posunout se na další) a zapsat data na konec souboru. Zbytek je vlastně kombinace těchhle.
Čili i „přeskočení“ části souboru se dělá tak, že se ta data přečtou a zahodí.
Giga
Profil *
kordy,

neviem, či som to pochopil úplne presne, ale čítam to tak, že JEDNORAZOVO potrebuješ z jedného súboru vytiahnuť každý druhý riadok. A nepotrebuješ to mať naprogramované v PHP.

Ak je to tak, potom si súbor otvor v exceli. Riadky očísluj, a z čísiel riadkov nechaj v novom stĺpci vypočítať modulo 2 (je to funkcia zapísaná: =MOD(A1;2) - to A1 je odkaz na číslo riadku). Nový stĺpec obsahuje na nepárnom riadku 1 a na párnom 0. Po zotriedení podľa nového indexu dostaneš párne riadky na začiatok súboru.
Tori
Profil
Giga:
si súbor otvor v exceli. Riadky očísluj, a z čísiel riadkov nechaj v novom stĺpci vypočítať modulo 2
Bude myslím jednodušší i rychlejší spolehnout na std.funkce PHP, které čtou soubor po řádcích a sudý/lichý počítat rověž v PHP (anebo místo modula mít v čítači jedničku a tu na konci každého průchodu násobit -1, a porovnávat if $citac > 0.), než sa hrát s excelem.
Giga
Profil *
Tori,

netuším, aké programátorské skúsenosti má Kordy. Neviem, či na svojom počítači má nainštalovaný server s PHP a môže si tak spustiť PHP skript.

Ak by som tento problém mal ja, tak by som to riešil takto:

program sude(input,output);
var Sudy : boolean = false;
R : string;
begin
while not Eof(input) do begin
readln(input,R);
if Sudy then writeln(output,R);
Sudy := not Sudy;
end;
end.

a nasledovne príkazovým riadkom:

Sude <vstup.txt >sude-riadky.txt

:)

Pekné Vianoce.
Tori
Profil
Giga:
Tahle možnost mě, pravda, nenapadla - asi proto, že kordy ten dotaz dal do kategorie PHP. ;-) Jinak rovněž přeju pěkné svátky.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0