我做了应用程序,form1上放了5个控件,分别是shelllistview1,listview1,button1,button2,spinedit1.已经实现了选中shelllistview1中的文件(多选,设置multiselect=true)按下button1,将所选文件名(不含路径)列入listview1中去,实现代码是procedure TForm1.Button1Click(Sender: TObject);//将所选项列入listview中var li:TListItem;begin li:=shelllistview1.Selected; while li<>nil do begin sf:=shelllistview1.Folders[li.index]; with listview1.Items.Add do begin if not sf.IsFolder then begin Caption:=sf.DisplayName; end; end; li:=shelllistview1.GetNextItem(li,sdall,[isselected]); end;end;然后想象实现老版acdsee的功能一样 ,选择spinedit1里的值,按下button2 实现能批量修改listview1中的文件名例子如提问中一样。可这批量修改文件名(不改扩展名)的思路老搞不定,水平有限,希望大家来帮忙啊!集思广益! 具体想实现: 例如listview下的文件列表: 015.txt 015.txt 02.txt 016.txt 04.txt 017.txt 05.txt spinedit1中的值为4,按下button2后 018.txt 09k.txt 019.txt 2.pdf 020.txt 4.txt 021.txt重命名文件要用到renamefile,就是具体思路很重要,有 实际代码就更好了,大虾们多多出力啊,在下感激了!