我无法在构建中使用 ifstream 读取文件,但可以在 IDE 中读取它

卢克·帕斯菲尔德

当我在 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()也不是真的。

卢克·帕斯菲尔德

我能看到的唯一方法是从可执行文件的目录中获取整个文件路径,剪切文件,然后用我想要的文件路径替换它。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我该如何删除用户无法读取但可以sudo的文件?

在C ++中使用ifstream逐行读取文件

无法使用fstream和ifstream在NDK C ++中读取文件

在 webdriver 中找不到 ELEMENT,但可以在 IDE 中使用

使用ifstream以逗号读取.txt文件

从文件读取C ++ Ifstream

无法在设备上的plist中读取/写入,但可以在模拟器中

ImageAI / Keras无法在Raspberry Pi上读取ResNet模型,但可以在Windows上使用

Javascript,无法读取未定义的属性,但可以打印到控制台

Java:不能对匿名内部类使用“<>”,不能在 IDE 中运行,但可以在终端中编译和运行

ifstream检查读取错误

Ifstream读取无用的数据

使用ifstream读取二进制文件

在std :: string中读取整个文件还是使用std :: ifstream操作文件会更好?

在Eclipse IDE中无法读取SystemPropertyVariable

如何在Linux上使用std :: ifstream从文件中读取非ASCII行?

使用ifstream从C ++文件中读取二进制无符号短整数

jar文件无法在Java 7中运行,但可以在Java 6中运行

PDF文件从网站下载后无法在adobe中打开,但可以在Edge中打开

无法一次添加所有文件,但可以在 git 中单独添加

Python无法在我的脚本中“导入nltk”,但可以在解释器中使用

是否存在用户无法输入或复制但可以通过代码插入/读取文本的特殊字符?

无法发送文件,但可以保管

使用Intellij Idea IDE读取文件

Jest无法使用js文件中的HOC,但可以与tsx文件中的HOC一起正常使用

C ++ ifstream读取行组

C ++ ifstream读取偏移范围

While 循环不读取整个 ifstream 文件

在 C++ 中使用 std::ifstream 读取 ASCII 文本文件