C++ Smazání obsahu textového souboru
Zdravím, pokud přečtu ze souboru text, nějak ho upravím, a potřebuji ho zapsat (ten upravený) a zároveň smazat ten starý (jiný v souboru není, takže by neměl být problém) a to bez přepsání souboru - nějaké návrhy?
Cože? Bez přepsání souboru? Soubor se logicky musí přepsat, když bude mít stejný název.
Právě že nechci vytvářet další soubor, cez ifstream přečtu text, ten si nějak upravím a pak ten samý soubor otevřu přes ofstream a zapíšu, ale nechci tam mít ten původní neupravený text
No o to jde. Pokud ten soubor přepíšeš, tak tam původní obsah nebude.
ked nepouzijes flag "app", tak to povodne data prepise
http://www.cplusplus.com/reference/iostream/ofstre am/open/
Ok, tohle jsem potřeboval :) Díky.
PS: Výsledný text bude stejně dlouhý jako původní..., trunc vyzkouším
prip. skus aj flag "trunc".
Nerozumiem celkom co to u teba znamena "bez prepsani suoboru" a za druhe nikto ani netusi jake funkcie pre pracu so subormi pouzivas. ANSI C? WinAPI? nejake z linux kniznic?
Vseobecne si vies nastavit aktualnu poziciu v subore pomocou nejakej fcie seek, a zapisovat nove bajty ktore prepisu povodne bajty od danej pozicie.
A ak moze nastat situacia ze vysledny subor ma byt mensi jak povodny, tak sa to robi principialne tak ze si ten editovany text drzim v RAM a povodny subor zavrem a ked sa ma prepisat tak sa subor otvori nanovo modom takym ze zmazat povodne data.