絕對路徑轉換為相對路徑

2021-06-27 06:40:10 字數 736 閱讀 8291

最近寫了個工作上要用到的工具,要和同事共用,需要儲存各種檔案路徑,為了保證我們的檔案結構相同,且減少檔案錯亂的問題,在儲存檔案路徑的時候決定用相對路徑來實現,就像vs裡生成路徑一樣,隨便把專案考到哪個地方都能保持正常執行。

需要轉換為相對路徑的源路徑:f:\\a\b\c-1\c-2\c-3\c-4

先找到兩個路徑共同的父路徑strparent = f:\\a\b,然後把參考路徑除了父路徑外路徑c\d\e轉換為相對路徑strrelative = ..\..\..\

然後把源路徑的strparent替換為strrelative就可以了,很簡單吧

下面是原始碼

/// /// 絕對路徑轉換為相對路徑

///

/// 參考路徑

/// 需要轉換的路徑

/// 返回轉換後的路徑

private string changetorelativepath(string strreferencepath, string strsourcepath)

else//若需要轉換的路徑長度小於當前程式路徑,此路徑就需要轉換為相對路徑

strlocationrelativepath += "..\\";

}return strsourcepath.replace(strsamepath, strlocationrelativepath);

}

小弟第一次寫部落格,有點小興奮呢,如果大家有更好的想法可以提出來,大家互相交流學習

相對路徑絕對路徑

前兩天突然發現自己一直以來對相對路徑絕對路徑的理解都是錯的,於是趕緊查了相關資料。1.絕對路徑 絕對路徑是指檔案在硬碟上真正存在的路徑。例如 bg.jpg 這個是存放在硬碟的 e book 網頁布局 第2章 目錄下,那麼 bg.jpg 這個的絕對路徑就是 e book 網頁布局 第2章 bg.jpg...

絕對路徑 相對路徑

一 基本概念 1 相對路徑 相對於當前檔案的路徑。網頁中表示路徑一般使用這個方法。二 相對路徑常見的寫法 代表目前所在的目錄。開頭 代表根目錄。根目錄下有test1資料夾和image image1.jpg,test1下有index1.html檔案和test2資料夾。test2資料夾下有index2....

C 將絕對路徑轉換為相對路徑

在專案中常需要將絕對路徑,轉換為相對路徑,來增加程式相關配置的的靈活性 不用因為整體挪個位置就導致我們的程式不能正常工作 自己寫 解決 private string relativepath string absolutepath,string relativeto 通過c 中uri類來解決 sys...