C++ Не видит путь из-за кирилицы
Написал прогу для создания папок на серверах но столкнулся с проблемойю Если пути имеют русскую кириллицу программа запускается но ничего не происходит затем выдается ошибка: ""terminate called after throwing an instance of 'std::filesystem::__cxx11::filesystem_error' what(): filesystem error: Cannot convert character sequence: Illegal byte sequence
Process returned -1073740791 (0xC0000409) execution time : 2.060 s Press any key to continue.
Если я использую путь к примеру fs::path path = ("D://test//Vacancy"); То все отлично копируется.
#include <iostream>
#include <fstream>
#include <filesystem>
using namespace std;
namespace fs = std::filesystem;
int main()
{
setlocale ( LC_ALL , "" ) ;
fs::path path = ("D://Тест//Vacancy");
const auto copyOptions = fs::copy_options::recursive ;
fs::copy("Vacancy", path ,copyOptions);
cout << "Готово" << endl;
return 0;
}
Ответы (1 шт):
#include <iostream>
#include <fstream>
#include <filesystem>
using namespace std;
namespace fs = std::filesystem;
int main()
{
setlocale(LC_CTYPE, "rus");
fs::path path = (u8"//server//Папка//папка2//папка3//Vacancy");
const auto copyOptions = fs::copy_options::recursive ;
fs::copy("Vacancy", path ,copyOptions);
wcout << L"Готово " << endl;
return 0;
}
Да пока копирование без проверки папки но сейчас допишу. Да и еще пути нельзя копировать и вставлять их нужно прописывать в ручную. В зависимости вашей IDE.