+ -
当前位置:首页 → 问答吧 → 怎样删除文本里指定的文件格式

怎样删除文本里指定的文件格式

时间:2011-12-26

来源:互联网

怎么读取文本文本里面路径,然后删除文件。

============================================
E:\1图书\1下载图书\缺页\1\


000015.pdg, 000049.pdg, 000063.pdg, 000068.pdg, 000101.pdg, 000142.pdg, 000180.pdg, 000327.pdg

============================================
E:\1图书\1下载图书\缺页\g\


000051.pdg, 000285.pdg

作者: hjhf445   发布时间: 2011-12-26

基本的文本操作,没有偷懒的方法,一行行读取,一行行替换
var
  s: string;
  f: TextFile;
begin
  AssignFile(F,FileName);
  Reset(F); //只读打开
  Readln(F, s); //读取
......
  CloseFile(F);

作者: funxu   发布时间: 2011-12-27

刚才少敲了一点,读取之后可以生成一个新文件,要用rewrite,reset仅限读操作,或者用文件流操作也可以,filestream,查delphi帮助里面有例子

作者: funxu   发布时间: 2011-12-27

或者用memo或者tstringlist也可以

作者: funxu   发布时间: 2011-12-27

Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);
var
  i,j:integer;
  s,fPath,fName:string;
  sList:TStringList;
begin
  sList:=TStringList.Create;
  sList.LoadFromFile('d:\1.txt');{这里是文本文件的路径}
  try
    for i:=0 to sList.Count-1 do
    begin
      s:=sList.Strings[i];
      if Trim(s)='' then
         continue;
      if SetCurrentDir(s) then
      begin
         fPath:=s;
         continue;
      end;

      s:=s+',';
      j:=pos(',',s);
      while j>0 do
      begin
        fName:=Trim(copy(s,1,j-1));
        if fileexists(fPath+fName) then
           deletefile(fPath+fName);
        delete(s,1,j);
        j:=pos(',',s);
      end;
    end;
  showmessage('处理完毕!');
  finally
    sList.Free;
  end;
end;

作者: kaikai_kk   发布时间: 2011-12-27

Delphi(Pascal) code
procedure TForm1.Button1Click(Sender: TObject);
var
  i,j:integer;
  s,fPath,fName:string;
  sList:TStringList;
begin
  sList:=TStringList.Create;
  sList.LoadFromFile('d:\1.txt');{这里是文本文件的路径}
  try
    for i:=0 to sList.Count-1 do
    begin
      s:=sList.Strings[i];
      if Trim(s)='' then
         continue;
      if SetCurrentDir(s) then
      begin
         fPath:=s;
         continue;
      end;

      s:=s+',';
      while true do
      begin
        j:=pos(',',s);
        if j=0 then break;
        fName:=Trim(copy(s,1,j-1));
        if fileexists(fPath+fName) then
           deletefile(fPath+fName);
        delete(s,1,j);
      end;
    end;

  finally
    sList.Free;
  end;

  showmessage('处理完毕');
end;

作者: kaikai_kk   发布时间: 2011-12-27

仔细看了一眼,理解错了,开始看标题"怎样删除文本里指定的文件格式",以为是删除文本内的字符,后来才发现是删除路径下的文件名,晕

作者: funxu   发布时间: 2011-12-27

引用 6 楼 funxu 的回复:

仔细看了一眼,理解错了,开始看标题"怎样删除文本里指定的文件格式",以为是删除文本内的字符,后来才发现是删除路径下的文件名,晕

deletefile........

作者: xiaofansong   发布时间: 2011-12-27

热门下载

更多