减少文件路径名的长度

  • 主题发起人 主题发起人 import
  • 开始时间 开始时间
I

import

Unregistered / Unconfirmed
GUEST, unregistred user!
如果有这样一个目录:   c:.wav
我希望它能缩短成:
 c:...wav
  如何写程序呢?
function shortenfilename(s : string) : string;
var
drive,curdrive : string[2];
dir,curdir : string[80];
  name : string[20];
  ext : string[5];
  i : byte;
begin
 for i:=1 to length(s) do s:=upcase(s);
  s:=fexpand(s);
  fsplit(s,dir,name,ext);
 drive:=copy(dir,1,2);
dir:=copy(dir,4,length(dir)-3);
getdir(0,curdir);
 curdrive:=copy(curdir,1,2);
 curdir:=copy(curdir,4,length(curdir)-3)+‘;
 if drive=curdrive then begin
 if copy(dir,1,length(curdir))=curdir then begin
 i:=length(curdir);
 if length(dir)<>i then dir:=dir+‘;
 shortenfilename:=copy(dir,i+1,length(dir)-i-1)+name+ext;
 end else shortenfilename:=copy(s,3,length(s)-2);
end else shortenfilename:=s;
end;
  
 

Similar threads

S
回复
0
查看
700
SUNSTONE的Delphi笔记
S
S
回复
0
查看
694
SUNSTONE的Delphi笔记
S
S
回复
0
查看
906
SUNSTONE的Delphi笔记
S
S
回复
0
查看
884
SUNSTONE的Delphi笔记
S
I
回复
0
查看
541
import
I
后退
顶部