当我在Eclipse中运行应该读取文件并将其内容输出到控制台的程序时,它会读取该文件并将其输出,而不会出现任何问题,但是当我构建它并在IDE外部运行它时,它不会不读。
这是读取文件的代码:
Map::Map(std::string file, SE_Graphics *graphics) {
std::ifstream input(file);
if (input.is_open()) {
std::string line;
while (std::getline(input, line)) {
std::cout << line << std::flush;
}
input.close();
} else {
std::cout << "File is missing" << std::flush;
}
}
这就是我所说的方法:
Map map("salsaboy/maps/test.sem", se.getGraphics());
这是文件夹结构:
Lab (the build)
src
salsaboy
|-tiles
|-maps
|-test.sem
每次我在IDE之外运行它时,它只会显示File is missing
,即使我尝试写入该文件input.is_open()
也不正确。
答案 0 :(得分:0)
我唯一能看到的是从可执行文件目录中获取整个文件路径,将文件切出,然后用所需的文件路径替换。