如何用代码生成文件(20分)

  • 主题发起人 主题发起人 sfply
  • 开始时间 开始时间
S

sfply

Unregistered / Unconfirmed
GUEST, unregistred user!
比如richedit的line可以直接用SaveToFile()函数把内容写到文件中。<br>有什么办法把一个字符串内容写到本文的文件中,例如c:/a.txt<br>要求直接用代码实现!
 
procedure WriteToLog(const Str:String);<br>var<br> &nbsp;RunLog:Text;<br>begin<br> &nbsp;Assign(RunLog,'c:/a.txt');<br> &nbsp;if FileExists('c:/a.txt') then<br> &nbsp; &nbsp;Reset(RunLog)<br> &nbsp;else<br> &nbsp; &nbsp;Rewrite(RunLog);<br> &nbsp;Append(RunLog);<br> &nbsp;Write(RunLog,Str);<br> &nbsp;Close(RunLog);<br>end;
 
要这么复杂?<br>stringlist.text:='字符';<br>stringlist.savetofile('c:/a.txt');
 
testcrackerno1兄没有考虑到 StringList 也要事前创建,事后释放啊:P<br>复杂度大家彼此彼此,而我的代码有追加的功能。
 
赫赫,一样一样.[:)]
 
同意二楼的,可以追加<br>而三楼的只是对文件重写,原来的东西都不存在啦[:D]
 
嘿嘿,我来骗分啦,补充一下。<br> &nbsp;Type<br> &nbsp;//为什么要写一个这样的看似无用的class,因为我有很多常用的函数,喜欢IDE的自动完成功能。因为我不想打开源码找function、procedure<br> &nbsp;GFP = class &nbsp;//Global And Public function and procedure<br> &nbsp; &nbsp;//为什么写成类函数、类过程<br> &nbsp; &nbsp;//因为我不想创建GFP对象,并释放它<br> &nbsp; &nbsp;class procedure WriteDebugInfo(strMsg,FileName:String);<br> &nbsp; &nbsp;...<br> &nbsp;end;<br> &nbsp;<br>class procedure GFP.WriteDebugInfo(strMsg, FileName: string);<br>var<br> &nbsp;f: textfile;<br>begin<br> &nbsp;AssignFile(f, FileName);<br> &nbsp;if not fileexists(FileName) then<br> &nbsp; &nbsp;Rewrite(f)<br> &nbsp;else<br> &nbsp; &nbsp;Append(f);<br> &nbsp;try<br> &nbsp; &nbsp;Writeln(f,strMsg);<br> &nbsp;finally<br> &nbsp; &nbsp;//最后一定要关闭文件,防止出现文件未写完,打又打不开,删也删不掉<br> &nbsp; &nbsp;CloseFile(f); &nbsp; <br> &nbsp;end;<br>end; <br><br>用TStrings不见得比WriteLn快,因为TStringList还是要建立?<br>加上try代码不比WriteLn少几行。<br>TStringList写入到文件时还是要打开文件进行读写操作......
 
多人接受答案了。
 
晕死,还真当我骗分。嘿嘿
 
不好意思,我不是这个意思,我还没来得及细看
 
后退
顶部