unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    ListView1: TListView;

    ListView2: TListView;

    Button1: TButton;

    Edit1: TEdit;

    Edit2: TEdit;

    Button2: TButton;

    Button3: TButton;

    Edit3: TEdit;

    Button4: TButton;

    procedure Button1Click(Sender: TObject);

    procedure ListView2Click(Sender: TObject);

    procedure FormShow(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);
  private
    { Private declarations }

  public

    { Public declarations }

  end;

var

  Form1: TForm1;

implementation

{$R *.dfm}
uses StrUtils;

function AddSelItems(listview1:TListView;ListView2:TListView):Boolean;
var
  s: string;

  I,j: Integer;
begin

  Result:=False;
  if listview1.Selected =nil then  exit;

  for i := 0 to listview1.items.count - 1 do

  begin

     j:=ListView2.Items.Count;
    if listview1.items[i].selected then


      with ListView2.Items.Add do

      begin

        Caption:=IntToStr(j);
        SubItems.add( listView1.Items[i].Caption );

        SubItems.add('FileName2');

      end;

  end;
  Result:=True;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
   ListView1.SelectAll;
   AddSelItems(ListView1,ListVIew2);
end;

var
    ID,FileName,NewName:string;
procedure TForm1.Button2Click(Sender: TObject);
var
    i:Integer;
begin

    for i:= 0 to ListView2.Items.Count -1 do

    with ListView2 do

    begin

      ID:= Items[i].Caption;
      FileName:=Items[i].SubItems.Strings[0] ;

      Items[i].SubItems.Strings[1] := StringReplace(FileName,Edit1.Text,Edit2.Text,[rfReplaceAll]);

    end;
end;

procedure TForm1.ListView2Click(Sender: TObject);
begin
    if listview2.Selected =nil then  exit;

    with ListView2 do

    begin

      ID:= Items[ItemIndex].Caption;

      FileName:=Items[ItemIndex].SubItems.Strings[0] ;

      NewName:=Items[ItemIndex].SubItems.Strings[1] ;
    end;

    Form1.Caption:=Format('Id = %s FileName = %s Newname = %s',[ID,FileName,NewName]);
end;

procedure TForm1.FormShow(Sender: TObject);
begin
   ListView1.SelectAll;
   AddSelItems(ListView1,ListVIew2);
   Button2.Click;
end;

procedure TForm1.Button3Click(Sender: TObject);
var
    i:Integer;
    LStr,RStr:string;
begin
    LStr:=LeftStr(Edit3.Text, Pos('*',Edit3.Text) -1 ) ;

    RStr:=RightStr(Edit3.Text, Length(Edit3.text) - Pos('*',Edit3.Text)  );

    for i:= 0 to ListView2.Items.Count -1 do

    with ListView2 do

    begin

      ID:= Items[i].Caption;
      FileName:=Items[i].SubItems.Strings[0] ;

      Items[i].SubItems.Strings[1] := Format('%s%s%s',[LStr,FileName,RStr]);

    end;
end;

end.

 

附件列表

ListView 文件重命名的更多相关文章

  1. 【Java EE 学习 22 上】【文件上传】【目录打散】【文件重命名】

    1.文件上传概述 (1)使用<input type="file">的方式来声明一个文件域. (2)表单提交方式一定要是post方式才行 (3)表单属性enctype 默 ...

  2. git 文件重命名

    文件重命名 git mv old_name new_name git commit -m 'rename' git push origin master 删除文件 git rm filename

  3. Java用来进行批量文件重命名,批量提取特定类型文件

    原因: 因为在网上下载视频教程,有的名字特别长,一般都是机构或者网站的宣传,不方便直接看到视频的简介,所以做了下面的第一个功能. 因为老师发的课件中,文件夹太多,想把docx都放在同一个文件夹下面,一 ...

  4. Linux下文件重命名、创建、删除、修改及保存文件

    一.重命名(更名) linux 给文件改名的命令是mv命令 mv命令来为文件或目录改名或将文件由一个目录移入另一个目录中.该命令等同于DOS系统下的ren和move命令的组合.它的使用权限是所有用户. ...

  5. Linux环境给文件重命名

    Linux环境给文件重命名时,如果重命名后的文件名称与当前路径下已存在的文件名称相同,则重命名的文件会覆盖相同名称的文件内容: 例如:新建文件testfile1,内容为mytest: 新建文件test ...

  6. C#给文件重命名

    使用的主要方法是: File.Move(oldFileDir,newFileDir);//这个是移动文件的方法 Directory.GetFiles(dir);//获取dir路径下的所有文件的全路径 ...

  7. PHP文件操作,多行句子的读取,file()函数,file_get_contents()函数,file_put_contents()函数,is_file,统计网站pv (访问量),文件的复制 copy,文件重命名 rename,删除文件 unlink

    php中添加utf-8: header("Content-type:text/html;charset='UTF-8'"); 文件操作步骤: 1.在同一目录下建立一个file.tx ...

  8. Asp.Net MVC 文件管理Demo(文件展示,上传,下载,压缩,文件重命名等)

    之前 ,有想做一个文件管理页面. 参考了 许多资料,终于完成了一个基于Asp.net MVC 的文件管理Demo.界面如下.   一,实现功能及相关技术 文件管理Demo基于Asp.NET MVC , ...

  9. servlet操作本地文件汇总: 判断文件是否存在;文件重命名;文件复制; 获取文件属性信息,转成Json对象; 获取指定类型的文件; 查找替换.txt中的文本

    package servlet; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; ...

随机推荐

  1. Winfrom 开发系统导航菜单

    先上图看效果在说. 效果图如上,在Web中这个一点难度都没有,几行Css+JS就搞定了.但是在Winfrom中.本来就是半杯水的水准,想做这个个导航菜单,发现真难找,找了很多都不合胃口,只能自己写个了 ...

  2. Android中获取应用程序(包)的信息----PackageManager

    本节内容是如何获取Android系统中应用程序的信息,主要包括packagename.label.icon.占用大小等.具体分为两个 部分,计划如下:   第一部分: 获取应用程序的packagena ...

  3. DataSet DataTable操作

    DataSet ds = new DataSet();            DataTable dt = new DataTable("OrderList");          ...

  4. asp.net C# 时间格式大全

    asp.net C# 时间格式大全DateTime dt = DateTime.Now;//   Label1.Text = dt.ToString();//2005-11-5 13:21:25//  ...

  5. Unity中Instantiate一个prefab时需要注意的问题

    在调用Instantiate()方法使用prefab创建对象时,接收Instantiate()方法返回值的变量类型必须和声明prefab变量的类型一致,否则接收变量的值会为null.   比如说,我在 ...

  6. C/C++:作用域、可见性与生存期

    作用域 作用域是用来表示某个标识符在什么范围内有效. C++的作用域主要有四种:函数原型作用域.块作用域.类作用域和文件作用域. 由大到小:文件作用域>类作用域>块作用域>函数原型作 ...

  7. <Stackoverflow> 如何提问

    如何提问 欢迎来到Stack Overflow! 我们很乐意帮助你,但是实际情况是并非每一个问题都能得到解决.为了提高你的机会,这儿有一些帮助: 1 检索及调查 在提出你的问题之前,你已经通过检索来寻 ...

  8. Using FastCGI to Host PHP Applications on IIS 7 -IIS7 怎么配置 PHP5

    This article describes how to configure the FastCGI module and PHP to host PHP applications on IIS 7 ...

  9. Apache Spark Streaming的简介

    Spark Streaming通过将流数据按指定时间片累积为RDD,然后将每个RDD进行批处理,进而实现大规模的流数据处理.其吞吐量能够超越现有主流流处理框架Storm,并提供丰富的API用于流数据计 ...

  10. 关闭SELinux的两种方法

    1 永久方法 – 需要重启服务器 修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启服务器. 2 临时方法 – 设置系统参数 使用命令setenforce ...