2015-02-06 4 views
1

Я создаю приложение Windows 8.1 DirectX и пытаюсь загрузить данные внешнего уровня для хранения.DirectX Windows 8.1 fstream не загружает файл

Соответствующий код в настоящее время (этот метод вызывается в конструкторе AssetHandler):

void AssetHandler::LoadLevelsData() 
{ 
    unsigned int i = 0; 
    std::string lineData; 

    this->currentFile.open("Assets/reg.txt"); 
    //Below statement here purely to check if the blasted thing is opening 
    if (this->currentFile.is_open()) 
    { 

    i++; 
    } 
    while (std::getline(this->currentFile, lineData)) 
    { 
    levels[i] = lineData; 
    i++; 
    } 
    currentFile.close(); 
} 

Проблема, что я имею что файл не появляется, чтобы быть открытие. Я пробовал:

  • Используя полный путь
  • Открытие файла в списке инициализации
  • точек останова показывает, что он прыгает над, если и в то время как

Я нашел некоторую информацию о том, что DirectX имеет ограничения на работу с внешними файлами, но он не уточнил, что это такое.

+0

Этот вопрос, похоже, не связан с DirectX. – SurvivalMachine

+0

Я просто не хотел ничего выносить. У меня сложилось впечатление, что этот вопрос может быть специфическим для разработки приложения DirectX. – InvertedIdeals

ответ

1

Тип элемента был установлен в положение «Не участвует в сборке». Установка этого значения в «Текст» решила проблему.

+1

Это означает, что вы ошиблись, что его нет. Вы должны иметь возможность вызывать '' errno'' или '' GetLastError() '', когда '' is_open'' возвращает false, чтобы узнать, что произошло. –

Смежные вопросы