作者qrtt1 (null)
看板C_and_CPP
標題[問題] boost::filesystem 路徑問題 (許功蓋相關)
時間Sun Aug 9 00:15:21 2009
Hi 各位版友好,
弟今日試用了 boost::filesystem::recursive_directory_iterator
真是一個強大的功能,這樣就可以剩下許多自行走訪檔案、目錄的時間。
不過遇到含有許功蓋等特殊字元的路徑時,它會顯示成 ????
像是:
d:/photo/中文.JPG
d:/photo/???
d:/photo/??????
原本應該是:
d:/photo/許功蓋
d:/photo/許功蓋/功.JPG
想詢面一下應該怎麼處理讓他正常顯示?
==============================================================
#include <iostream>
#include "boost/filesystem.hpp"
#include "boost/progress.hpp"
namespace fs = boost::filesystem;
int main(void) {
boost::progress_timer t(std::clog);
fs::recursive_directory_iterator end;
fs::path path("d:\\photo");
fs::recursive_directory_iterator iter(path);
while (iter != end) {
std::cout << *iter << std::endl;
iter++;
}
return EXIT_SUCCESS;
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.231.48.9
→ qrtt1:改用 path.external_file_string() 就可以了 :D 08/09 01:14
推 ycjcsie:如果只想取得filename要怎麼辦 08/09 15:56
推 buganini:basename() 我亂入不知道對不對XD 應該不會差太多 08/09 20:11