Невозможно прочитать из файла - PullRequest
0 голосов
/ 06 декабря 2018

Следуя инструкциям vulkan , я столкнулся с проблемой.Я просто не могу открыть файлы, используя метод, который он использует.

У меня есть файл с именем shader.frag.spv, фрагментный шейдер, скомпилированный в код spir-v.Он находится в моей исходной папке, где находится и мой readFile.

Вот код, который воспроизводит мою проблему:

#include <iostream>
#include <fstream>

void readFile(const std::string& filename) {
    std::ifstream file(filename, std::ios::ate | std::ios::binary);

    if (file.is_open())
        std::cout << "test";
    else
    {
        std::cin.get(); // I always land on the else block
    }
}

int main()
{
    readFile("shader.frag.spv");
}

Перезапуск Visual Studio, изменение имени файла, изменяя его содержимое, перемещая его в отдельную папку, используя абсолютный путь.Ничто из этого не решило мою проблему.

Есть идеи?

1 Ответ

0 голосов
/ 06 декабря 2018

Код должен работать, учитывая, что файл уже находится в вашем текущем рабочем каталоге , проверьте, что!

По умолчанию текущий каталог в Visual Studio - этокорень проекта, а не тот, где находится исполняемый файл, как упомянул @someProgrammerDude.

Если вы не уверены в этом, проверьте Текущий рабочий каталог Visual Studio C ++ .

...