c++ - 使用指定的路径更改目录(路径包括文件名作为字符串)
问题描述
我想切换到路径指定的目录。文件名是一个字符串,包含在路径中。
我已将文件名存储在字符串中,并将此文件名添加到路径中。接下来使用chdir()
我更改为路径指定的目录。
我知道文件名可以在路径本身中指定,但我希望它这样做,因为文件名将不断变化。
int main()
{
system("echo -n '1. Current Directory is '; pwd");
std::string filename ("1184581000.pcd");
cout<<filename;
chdir("/home/usrn/pcd/"+ filename"");
system("echo -n '1. Current Directory is '; pwd");
return 0;
}
结果是:
error: expected ‘)’ before string constant
chdir("/home/usrn/pcd/"+ ls"");
error: cannot convert ‘std::__cxx11::basic_string<char>’ to ‘const char*’ for argument ‘1’ to ‘int chdir(const char*)’
chdir("/home/usrn/pcd/"+ ls"");
解决方案
语法应该是:
chdir(("/home/usrn/pcd/"+ filename).c_str());
推荐阅读
- jenkins - 具有强制阶段的 Jenkins 声明式管道
- c++ - 遍历预处理器定义并处理它们
- flutter - 如何解决此错误“方法'/'在null上被调用”
- javascript - 如何在打字稿中显示具有多维数组的json
- git - 如何修复会破坏现有标签的问题
- c# - EF Core 一对多映射到没有键的表
- rust - 使用 rust 将文件名收集到向量中时,借用值的寿命不够长
- sql - 使用相同的主键将值从一行添加到另一行 - Oracle SQL
- wpf - 当 TabControl.TabItem 具有固定值时,如何删除 Header 和 ContentPresenter 之间的线?
- c# - .Net Core 自定义属性中的依赖注入