C++ - как указать кодировку блокноту?

  1. Есть функция записи в файл .lua строки из vector . Notepad++, которым я открываю получившийся файл, автоматом выбирает кодировку Windows-1251, а программе, которая будет читать этот файл потом, нужна UTF-8.
  2. Есть ещё одна функция, которая записывает строки из другого вектора, но в файл .txt, в котором кодировка ставится Macintosh. Некоторые символы в файле меняются на другие и, скорее всего, именно из-за этого.

Как исправить эти проблемы?

Это запись в файл:

//Запись файла с данными генерации заново

void zanovoData(long gen)
{

    
    ofstream ZanovoData;
    ZanovoData.open("GPB/Data.txt");
    
    
    ZanovoData << "Это файл данных для генератора." << endl;
    ZanovoData << "Параметры здесь не меняются вручную." << endl;
    ZanovoData << "Изменение данных в этом файле может привести к неработоспособности программы." << endl;
    ZanovoData << endl;
    ZanovoData << endl;
    ZanovoData << "Было генераций:" << endl;
    ZanovoData << to_string(gen) << endl;
    ZanovoData << endl;


    ZanovoData.close();
    
}

Ответы (0 шт):