我有以下c++
代码用于规范化用户提供的文件路径:
wxString orig_path;
wxFileName res_path(orig_path);
res_path.Normalize(wxPATH_NORM_DOTS);
裁判:
wx文件名::规范化
wx文件名::规范化标志
什么时候:
orig_path = "../../dir1/f.csv"
我收到烦人的错误消息:
Error: The path 'f.csv' contains too many ".."!
什么时候:
orig_path = "dir1/../dir2/f.csv"
一切都按预期工作。
问题
有什么方法可以抑制这些错误消息吗?(无声旗帜
?我想我可以在打电话之前自己做一些处理Normailze
但有什么意义呢?在打电话之前,我宁愿不做任何事情或对orig_path
一无所知Normailze
使用 wxLogNull
.在此类对象的生存期内对日志函数的所有调用都将被忽略。请参阅文档。
wxLogNull noLogsPlease;
wxString orig_path;
wxFileName res_path(orig_path);
res_path.Normalize(wxPATH_NORM_DOTS);