所有版本的Windows的路径都不包括结尾的 '/' 么?(100分)

C

com

Unregistered / Unconfirmed
GUEST, unregistred user!
比如 SHGetPathFromIDList 得到的路径
FindFirst的TSearchRec.Name
等等.......
查了MSDN却没找到
而Delphi的函数比如 ExtractFilePath 却都是带 '/' 的?
 
C:/呢?除了这个意外,其他的都没有,呵呵。
不过选择一个全部带/的不是处理更方便吗?
 
ExtractFileDir,这个没有/
 
是因为我的好多语句都没有判断是否有 '/' 呀,
怕出问题,如果真的不是全没有‘/’那我就惨了!
 
ExtractFilename()
 
使用前先自己进行判断不就行了么
看最后一个字符是不是“/“
若不是再在后面加上吧
 
用一個函數來確保都帶有 '/' 就行啦。
提供一個自寫的函數,之所以使用 WideString 是由於有些中文字尾巴是 '/' ,之前
使用 String ,結果當然就出問題啦。
function JCF_Apath(const path:string):string;
var
ws:WideString;
begin
// 確保字串尾部以 '/' 結尾
result:='';
ws:=path;
if length(ws)=0 then
exit;
if ws[length(ws)]<>WideChar('/') then
ws:=ws+WideChar('/');
result:=ws;
end;
 
楼上两位兄台,这个判断我还会,问题是我想知道 SHGetPathFromIDList 得到的路径
和 FindFirst的TSearchRec.Name ,在所有版本的Windows里是不是都没有 '/',
程序已经写的太多了,改起来很......,所以想知道有没有必要改!
 
从来都是这样的呀!
if(length(PathName) <> 3) then
PathName := PathName+'/';
 
uses IdGlobal;
function CheckPfadEnd(const P: string): string;
begin

Result := IncludeTrailingBackslash(P);
end;


 
有没有像installshield的那个^运算符啊?不论后面是不是/,都灵!很好使
 
有必要改,因為根目錄的話會跟一個 'C:/' ,但非根目錄則沒有 '/'
 

Similar threads

D
回复
0
查看
736
DelphiTeacher的专栏
D
D
回复
0
查看
714
DelphiTeacher的专栏
D
顶部