在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
(原创 -- 作者:陆岛工作室 E-mail: [email protected]) 以前也曾经为 Delphi 中相对路径与绝对路径之间的转换烦恼过。但时,用得少,也没过多地去注意了。今天要写一个小程序,又遇到了这个问题。就找资料吧,终于找到了最简单,最直接的方式。现在把函数整理如下:
// BasePath: 是参考路径。RelativePath: 是指相对路径
function GetAbsolutePathEx(BasePath, RelativePath:string):string; var Dest:array [0..MAX_PATH] of char; begin FillChar(Dest,MAX_PATH+1,0); PathCombine(Dest,PChar(BasePath), PChar(RelativePath)); Result:=string(Dest); end; 示范: S := GetAbsolutePath('C:\Windows\System32', '..\DEMO.TXT') // S 将得到 'C:\Windows\DEMO.TXT //绝对路径转换为相对路径的函数 function GetRelativePath(const Path, AFile: string): string; function GetAttr(IsDir: Boolean): DWORD; begin if IsDir then Result := FILE_ATTRIBUTE_DIRECTORY else Result := FILE_ATTRIBUTE_NORMAL; end; var p: array[0..MAX_PATH] of Char; begin PathRelativePathTo(p, PChar(Path), GetAttr(False), PChar(AFile), GetAttr(True)); Result := StrPas(p); end; |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论