bu mail 1 ay once degilmiydi? benmi yanlis animsiyorum, ya da benim
qmail mi bana oyun oynuyor?
On 04/07/2011 10:50 PM, Serdar KÖYLÜ wrote:
Sanırım sizin aradığınız şey bu değildi, yada ben aradığınız şeyi
yanlış anladım.
freopen() ile yeniden açtığınız stream eski dosyadaki bilgileri
tutacaktır.
Sizin aradığınız şey şu gibi geliyor:
int ftruncate(int fd, off_t length);
man 2 ftruncate
Önce dosyanın başına gidin:
rewind(..);
veya
fseek(file, 0, SEEK_SET);
Sonra ftruncate ile dosyanın arka tarafını kesin. freopen()'in
overheadine ihtiyaç yok sanıyorum.
ftruncate(fileno(file), 0);
Diğer yandan bilhassa C ile fopen/fread serisi fonksiyonları değilde,
open, read, write serisi low level fonksiyonları kullanmanız daha iyi
netice verecektir, hele böyle sıradışı beklentileriniz varsa.
C tam bir tembel adam dilidir. Zahmetsizce her şeyi yapar, java gibi
aptal aptal işler açmaz başınıza. Ama 3-5 satır az yazacağım diye
düşünürseniz, genellikle bu size daha çok iş olarak geri döner.
Saygı, sevgi, linux...
2011/3/6 Engin Yüce <[email protected] <mailto:[email protected]>>
Atif Bey teşekkürler, aradığım şey buydu. Mucibirahman Bey'e de
yardımlarından dolayı teşekkür ediyorum.
-engin
_______________________________________________
Linux-programlama mailing list
[email protected]
<mailto:[email protected]>
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php
_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php
--
/**
* *@author* Atıf CEYLAN
* Software Developer & System Admin
* http://www.atifceylan.com
*/
_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php