新手求助!!!数据写入,导出TXT文本后,系统报错the specified file was not found

第五阿辉 2013-04-05 10:29:41
用了一个Tsavedialog控件。导出文本后系统返回错误the specified file was not found,但是如果文本不存在的话,文本还是能生成的。如果文本已经存在了,那么这次的文本就会加入到原来的文本里面。没办法只能做了一个错误提示,防止重复写入一个文本。怎么改都还是要报错,求教要怎么改?是否思路要换过?

Procedure TMOText.ConVert(const Dir:String);
var
i,v:Integer;
A:TextFile;
s:String;
begin
AssignFile(A,Dir);
try
append(A);
except
Rewrite(A);
end;
begin
Writeln(A,'start');
end;
s:='';
For i:=0 to adodsCustomer1.RecordCount-1 do
begin
For v:=0 to adodsCustomer1.Fields.Count-1 do
begin
S:=S+adodsCustomer1.Fields.Fields[v].AsString;
if v < adodsCustomer1.Fields.Count-1 then
S:=S+'|';
end;
adodsCustomer1.Next;
Writeln(A,s);
S:='';
end;
begin
Writeln(A,'END');
end;
CloseFile(A);
end;

procedure TMOText.Button3click(Sender: TObject);
var
A:TextFile;

begin
if SaveDia.Execute then
begin
if fileexists(SaveDia.FileName) then
begin
showmessage ('文件已存在');
end else
ConVert(SaveDia.FileName);
end;
end;
...全文
1991 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
sololie 2013-04-06
  • 打赏
  • 举报
回复
如果文件删除不掉,检查下是否被其他进程打开了该文件还未关闭。

var
  f: TextFile;
  fname: string;
begin
  fname := 'c:\1.txt';
  if DeleteFile(fname) then
  begin
    AssignFile(f, fname);
    try
      Rewrite(f);
      // 写内容
    finally
      CloseFile(f);
    end;
  end
  else
    raise Exception.CreateFmt('文件 %s 删除失败', [fname]);
end;
sololie 2013-04-05
  • 打赏
  • 举报
回复
如果文件已存在则替换掉它的话那就很简单啊,怎么给弄得那么复杂?

var
  f: TextFile;
  fname: string;
begin
  fname := 'c:\1.txt';
  DeleteFile(fname); // 不管是否存在都先执行删除
  AssignFile(f, fname);
  try
    Rewrite(f);
    // 写内容
  finally
    CloseFile(f);
  end;

第五阿辉 2013-04-05
  • 打赏
  • 举报
回复
只想把数据库里面的东西,按照固定的格式导出文本,导出的时候碰到问题了。本来想没有文件就新建一个,有的话就替换掉。结果出错了
sololie 2013-04-05
  • 打赏
  • 举报
回复
没看懂你究竟想干嘛。 是想保存一个文件,如果文件已存在则不保存? 还是想如果文件已存在就追加内容进这个文件?
YOLO系列是基于深度学习的端到端实时目标检测方法。 PyTorch版的YOLOv5轻量而高性能,更加灵活和易用,当前非常流行。 本课程将手把手地教大家使用labelImg标注和使用YOLOv5训练自己的数据集。课程实战分为两个项目:单目标检测(足球目标检测)和多目标检测(足球和梅西同时检测)。  本课程的YOLOv5使用ultralytics/yolov5,在Windows和Ubuntu系统上分别做项目演示。包括:安装YOLOv5、标注自己的数据集、准备自己的数据集(自动划分训练集和验证集)、修改配置文件、使用wandb训练可视化工具、训练自己的数据集、测试训练出的网络模型和性能统计。 除本课程《YOLOv5实战训练自己的数据集(Windows和Ubuntu演示)》外,本人推出了有关YOLOv5目标检测的系列课程。请持续关注该系列的其它视频课程,包括:《YOLOv5(PyTorch)目标检测:原理与源码解析》课程链接:https://edu.csdn.net/course/detail/31428《YOLOv5目标检测实战:Flask Web部署》课程链接:https://edu.csdn.net/course/detail/31087《YOLOv5(PyTorch)目标检测实战:TensorRT加速部署》课程链接:https://edu.csdn.net/course/detail/32303《YOLOv5目标检测实战:Jetson Nano部署》课程链接:https://edu.csdn.net/course/detail/32451《YOLOv5+DeepSORT多目标跟踪与计数精讲》课程链接:https://edu.csdn.net/course/detail/32669《YOLOv5实战口罩佩戴检测》课程链接:https://edu.csdn.net/course/detail/32744《YOLOv5实战中国交通标志识别》课程链接:https://edu.csdn.net/course/detail/35209 《YOLOv5实战垃圾分类目标检测》课程链接:https://edu.csdn.net/course/detail/35284  

2,498

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧