2015-08-31 55 views
2

我想檢查兩個路徑是否與Boost.Filesystem是同一個文件/目錄。如何檢查兩個路徑是否與Boost.Filesystem相同的文件/目錄

例如,「/ bin」和「/./bin」對於相同的目錄,但以下代碼不能按預期工作。

namespace fs = boost::filesystem; 
fs::path p1{"/bin"}, p2{"/./bin"}; 

if(p1 == p2){ 
    std::cout << "Equal" << std::endl; 
}else{ 
    std::cout << "Not equal" << std::endl; 
} 

這是「不相等」的輸出。

如何檢查兩個路徑是否位於同一個文件/目錄? 你能告訴我這個嗎?

謝謝。

回答

4

您應該使用equivalent函數,因爲路徑的比較運算符僅比較字典順序。

+0

謝謝!這正是我想要的。 – Tsuzu

相關問題