我写了一个程序,将流派、视图状态和标题写入不同的文件,最后两个一切都很好,但由于某种原因,流派不想以 UTF-8 编码保存。我可以手动更改编码,但下次编写时,它会自行更改回 ANSI,而不是所需的文本,它会变成一只胆鸟。我试图创建一个新文件,但由于某种原因问题再次出现。
负责编写的代码部分。
void set_name(char *p_name) {
ofstream outside_name("C:\\Users\\dimak\\Desktop\\C++\\Фильмы 2.0\\Name.txt", ios::out | ios::app | ios::binary);
outside_name.write((char*) p_name, sizeof p_name);
outside_name.write("\n", 1);
}
void set_ganre(char* p_ganre) {
ofstream outside_ganre("C:\\Users\\dimak\\Desktop\\C++\\Фильмы 2.0\\Ganre.txt", ios::out | ios::app | ios::binary);
outside_ganre.write((char*)&p_ganre, sizeof p_ganre);
outside_ganre.write("\n", 1);
}
void set_w_unw(char p_w_unw) {
ofstream outside_w_unw("C:\\Users\\dimak\\Desktop\\C++\\Фильмы 2.0\\W_Unw.txt", ios::out | ios::app | ios::binary);
outside_w_unw.write((char*) &p_w_unw, sizeof p_w_unw);
outside_w_unw.write("\n", 1);
}
试图进入
setlocale(LC_ALL, "ru");
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
但这并没有改变这种情况。