Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Brisanje zapisa u datoteci

[es] :: C/C++ programiranje :: Brisanje zapisa u datoteci

[ Pregleda: 5146 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Iznogud
Subotica

Član broj: 1721
Poruke: 212
*.161.EUnet.yu



Profil

icon Brisanje zapisa u datoteci04.09.2002. u 21:58 - pre 228 meseci
Kako se brise zapis iz datoteke?
Da li ga je moguce potpuno fizicki ukloniti iz datoteke, tj da se brisanje ne svodi na punjenje polja zapisa nulama.
Ima li neka f-ja za to?
 
Odgovor na temu

turncoat
Marko Uskokovic
Bg, Kg, Va

Član broj: 4063
Poruke: 241
*.ptt.yu

Jabber: uskokovic@gmail.com
ICQ: 304009317
Sajt: marko.uskokovic.name


Profil

icon Re: Brisanje zapisa u datoteci06.09.2002. u 22:03 - pre 228 meseci
A da probas da svaki zapis iza tog pomeris za jedno polje u levo? (kao izbacivanje clanova iz niza). Posle samo treba da mu kazes da skrati fajl za jedan zapis; u pascal-u postoji funkcija trunc koja na mestu na kom se nalazi file pointer udara EOF, tako da se datoteka skracuje. Ako mozes da koristis WinAPI imas funkciju SetEndOfFile (opis na kraju). Verovatno takva neka funkcija ima i u standardnoj biblioteci (ili mozda mozes samo da ispises znak za EOF u fajl?)


The SetEndOfFile function moves the end-of-file (EOF) position for the specified file to the current position of the file pointer.

BOOL SetEndOfFile(
HANDLE hFile // handle of file whose EOF is to be set
);

Parameters
hFile
Identifies the file to have its EOF position moved. The file handle must have been created with GENERIC_WRITE access to the file.
Return Values
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
Remarks
This function can be used to truncate or extend a file. If the file is extended, the contents of the file between the old EOF position and the new position are not defined.
If you called CreateFileMapping to create a file-mapping object for hFile, you must first call UnmapViewOfFile to unmap all views and call CloseHandle to close the file-mapping object before you can call SetEndOfFile.
"Ako hoćeš da saznaš, pristani na sve"
- Džoni Štulić
 
Odgovor na temu

Iznogud
Subotica

Član broj: 1721
Poruke: 212
*.242.EUnet.yu



Profil

icon Re: Brisanje zapisa u datoteci08.09.2002. u 16:56 - pre 228 meseci
Izgleda da je jedini nacin da komplet datoteku uvucem u memoriju pa da je tu modifikujem tj. da obrisiem zapise koji mi ne trebaju i onda takvu da je ponovo zapisem u datoteku.
Medjutim sta ako je datoteka velika da bi se pohranila u memoriju?
 
Odgovor na temu

[es] :: C/C++ programiranje :: Brisanje zapisa u datoteci

[ Pregleda: 5146 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.