Проблема в отображении русских символов в JSON файле
Такая проблема, проект пишется на языке c++/cli, все поля для ввода имеют тип String^, нужно сделать вывод в json-файл, но он не принимает тип String^, я нашел рабочий метод преобразования из String^ в string с помощью маршала, но русские символы не отображаются(вместо них другие буквы)
#include <msclr\marshal.h>
#include <msclr\marshal_cppstd.h>
namespace ns {
struct user {
string login;
string name;
string surname;
};
}
String^ login = textBox1->Text;
String^ name = textBox2->Text;
String^ surname = textBox3->Text;
string newlogin = marshal_as<std::string>(login);
string newname = marshal_as<std::string>(name);
string newsurname = marshal_as<std::string>(surname);
ns::user obj = {newlogin,newname,newsurname};
json j;
j["login"] = obj.login;
j["name"] = obj.name;
j["surname"] = obj.surname;
std::ofstream o("test.json");
o << j << std::endl;
Использую библиотеку nlohmann, для json.