Delphi读取文件和写入和DELPHI 操作的一些小技巧

本文总结了Delphi中读取和写入文件的基本步骤,包括使用AssignFile、Reset/ReWrite、Readln/WriteLn以及CloseFile函数。示例代码展示了如何读取指定文件并处理每一行,以及如何根据文件是否存在选择追加或覆盖写入。此外,还提供了一个通用的日志写入过程,可以根据配置文件进行操作。
摘要由CSDN通过智能技术生成

Delphi读取文件和写入文件总结
---
读取文件:
1,关联文件:AssignFile(pMyFile,'c:\ttt.csv');
2,打开文件:Reset(pMyFile);
3,读取一行:Readln(pMyFile,pStr);
4,关闭文件:CloseFile(pMyFile);
示例:
procedure TForm1.Button1Click(Sender: TObject);
var
pMyFile:textfile;
pStr : string;
begin
    if OpenDialog1.Execute then begin
        Assignfile(pMyFile,OpenDialog1.FileName);
        Reset(pMyFile);
        while not Eof(pMyFile) do begin
            Readln(pMyFile,pStr);
            //fn_DelStock(pStr); //使用读取的字符串相关语句
            next;
        end;
        CloseFile(pMyFile);
    end;
end;
+++
写入文件:
1,关联文件:AssignFile(pMyFile,'c:\ttt.csv');
2,打开文件:ReWrite(pMyFile);   //如果文件不存在,用ReWrite打开
             Append(pMyFile);   //如果文件已经存在,追加内容,用Append打开
3,写入一行:WriteLn(pMyFile,pStr);
4,关闭文件:CloseFile(pMyFile);
示例:
procedure TForm1.WLog(pMsg: string);
var
pFObJect,pFPath,pFName: string;
pMyFile: textFile;
pStr: string;
begin
    pFPath:='d:';
    pFName:='StockDel_'+formatDateTime('yyyymmddhhmmss',now);
    pFObject:=pFPath + '\' + pFName + '.csv';
    try
        AssignFile(pMyFile,pFObject);
        if FileExists(pFObject)=false then
            ReWrite(pMyFile)
        else
            Append(pMyFile);
        pStr:=pMsg;
        WriteLn(pMyFile,pStr);
    finally
        CloseFile(pMyFile);
    end;
end;
+++
公用写日志文件过程
//==ini文件设置:
'日志选项和文件 当Log_Flag=N时不记录,否则均记录
Log_Flag=1
Log_PathFileName=\\10.105.10.12\c\Prd_220_File\log.dat
//==声明全局变量
x_pLogFile: string;       //日志文件名称
x_pLogFlag: string;       //是否记录日志,N:不写日志
x_pFindLogFile: boolean; //记录日志文件是否存在,避免每次写日志时都要判断。
//==过程声明
procedure cpWriteLog(pFObject:string; pTxt:string; pMode:byte);
//==初始化全局变量
procedure TForm1.FormCreate(Sender: TObject);
begin
x_pLogFile:= cfReadIniFile(X_cProgID,'Log_PathFileName','c:\ENRC0300_Log.txt');
x_pLogFlag:= cfReadIniFile(X_cProgID,'Log_Flag','N');
end;
//==写日志过程
procedure cpWriteLog(pFObject:string; pTxt:string; pMode:byte);
var
pMyFile: textFile;
begin
    if x_pLogFlag='N' then exit;
    try
        AssignFile(pMyFile,pFObject)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值