当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

 ·    »显示摘要«
    摘要: 版主: 你好,,, 我是刚注册这个网站,, 发了贴子, 结果发不出去, 没办法, 只好发短消息了,, 我在赶做毕业设计,被这个问题卡住了做不下去了., 要来不及了,, 请指教,,, [error] pmodify.pas(96): incompatible types: integer and extended x:=mydatanew.adomoidfy.fieldbyname(km......
    摘要: xp系统,装了一个虚拟光驱软件(碟中碟),发现不好使,卸载后,多出来的光驱盘符无法删除,看着烦心,怎么处理掉??? ......


文件存取的简单问题

使用fopen以只读方式打开一文件读入文件内容  
    FILE   *fp=fopen(filename,"r");  
  然后再用fclose(fp)关闭文件。  
  当程序不退出,再用fopen以只写方式打开同一文件写入文件内容时,  
  FILE   *fp=fopen(filename,"w");  
  文件却不是以只写方式写入,而是以追加方式在原文件后追加新写入的内容,请问这是怎么回事,应该如何避免。  
  谢谢。  
 

NO.1   作者: blankman

原因我不知道,但是我想你可以是一下重新定位指针,再第二次打开的时候,用定位指针的函数将指针定位在文件的开始处,好像是seek我记不清了,你查一下

NO.2   作者: kingcaiyao

fseek

NO.3   作者: libamboo

mark

NO.4   作者: mygodness

我试验过了,你在骗人吧,怎么我的方式不是追加方式,以下是我的代码:  
  void   __fastcall   TForm1::Button1Click(TObject   *Sender)  
  {  
  FILE   *fp;  
  fp=fopen("error.txt","r");  
  fclose(fp);  
  fp=fopen("error.txt","w");  
  fprintf(fp,"%s","i   cant   believe");  
  fclose(fp);  
  }

NO.5   作者: bloodedparrot

Up

NO.6   作者: dev_uoboy

怪了,你写入方式就是要写啊。  
   
  你想达到的效果是什么?

NO.7   作者: aningstar

老兄,你的问题不在这里  
   
  fstream   file;  
   
    file.open("test.txt",ios::out);  
   
   
    file<<"A";  
   
   
    file.close();  
   
   
  上面的代码就行了  
   
   
  设置ios::out其实隐含了ios::trunc  
   
   
  而后者的意义是:如果文件存在,使其长度为0,并消去原来的内容  
   
  忘了说了,只有单独设置ios::out才隐含ios::trunc  
  <br   />  
   
  所以,如果象你的代码,就要这样做  
  <br   />  
   
  fstream   file;  
   
    file.open("test.txt",ios::out|ios::in|ios::trunc);  
   
    file<<"A";  
   
    file.close();  
  Ok???  
   
 


    摘要: 再用delphi6,自带的安装程序打包后,安装的没有bde的机子上面,程序无法执行. 请教各位高手,如何将bde装到打包的程序中~ ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE