boost::filesystem::path
使用&
逃生路徑字符串引號,see demo:爲什麼路徑轉義字符與boost :: filesystem :: path和std :: filesystem :: path不同?
std::cout << boost::filesystem::path("/R&D/Project \"boost\"") << std::endl;
打印"/R&&D/Project &"boost&""
。但是,對於std::filesystem::path
I see this:
在路徑p上執行流輸入或輸出。使用std :: quoted,以便稍後通過流輸入運算符讀取空格時不會截斷。
這裏是std::quoted
:
逃生 - 作爲轉義字符使用的字符,默認爲\
從這個我可以告訴大家,std::filesystem::path
將使用\
代替&
。
這是正確的嗎?如果是,爲什麼委員會決定改變這種行爲?
獎金問題:有沒有std::filesystem::path
的實現可用?似乎沒有最新的GCC和clang提供<filesystem>
標題。
大,感謝您的報價!至於實驗,我在網上編譯器嘗試過,但沒有成功:http://melpon.org/wandbox/permlink/nfZ88PnrttOGbEHu也許它只是在線編譯器的一個問題。 – Mikhail
@Mikhail As Jonathan在[這個答案](http://stackoverflow.com/a/33159746/4115625)中提到過,你必須將它與'-lstdC++ fs'聯繫起來。參見[this](http:// melpon .org/wandbox/permlink/75pJtT4K3dAgGT1i) – Danh
很酷,非常感謝! – Mikhail