Не могу скомпилировать текстовый файл в исполняемый?

Как добавить текстовый файл в виде ресурса к коду в Visual Studio на языке C++ и как обратиться к этому ресурсу в программе?
  • 17 февраля 2024 г. 19:58
Ответы на вопрос 2
Для добавления текстового файла в виде ресурса к коду в Visual Studio на языке C++ вы можете выполнить следующие шаги:

1. Откройте проект в Visual Studio.
2. Щелкните правой кнопкой мыши на проекте в обозревателе решений и выберите "Добавить" -> "Существующий элемент".
3. Выберите текстовый файл, который вы хотите добавить в ресурсы проекта, и нажмите "Добавить".
4. После этого откройте файл "Resource.h" в вашем проекте и добавьте следующую строку:

```cpp
#define MY_TEXT_FILE 101
```

Здесь MY_TEXT_FILE - имя, которое вы дали вашему текстовому файлу.

5. Теперь откройте файл "Resource.rc" и добавьте следующую строку:

```cpp
MY_TEXT_FILE TEXT "путь_к_вашему_текстовому_файлу"
```

Замените "путь_к_вашему_текстовому_файлу" на путь к вашему добавленному текстовому файлу.

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

```cpp
HRSRC hResInfo;
HGLOBAL hResource;
char* lpResource;
hResInfo = FindResource(NULL, MAKEINTRESOURCE(MY_TEXT_FILE), RT_RCDATA);
hResource = LoadResource(NULL, hResInfo);
lpResource = (char*)LockResource(hResource);
// Теперь lpResource содержит данные из вашего текстового файла
```

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

#include <iostream>
#include <fstream>

int main() {
    std::string path_file = "text.txt";
    //путь к файлу
    
    std::ifstream file(path_file);
    //открываем файл для чтения
    
    if (file.is_open()) {
    //проверяем открылся ли файл
        while(!file.eof()) {
            std::string str;
            std::getline(file, str);
            //читаем файл
            
            std::cout << str << std::endl;
            //обрабатываес информацию из файла
        }
    }
    
    file.close();
    //закрываем файл освобождая память
    
    return 0;
}


Тут я использовал стандартную библиотеку fstream для работы с текстовыми файлами.
Похожие вопросы