Я разработал кроссплатформенное приложение qt для MacOS и Windows, у меня есть файл с именем 'proj.json', он генерируется программой fastjson в моем приложении для Windows, а в Windows его формат кодирования - GB2312, теперь я использую rapidjson в моем приложении на Mac для анализа proj.json, в файле proj.json есть строка '. \ Templates \ 2D 贴纸 \ 2D 贴纸 .fuproj', в моем приложении qt на mac я использую этот код для получения строка '. \ Templates \ 2D 贴纸 \ 2D 贴纸 .fuproj'
string pjson = fullfile(folder, "/proj.json");
if (isexist(pjson))
{
rapidjson::Document doc;
bool isReadJsonSuccess;
doc = loadJson(pjson,&isReadJsonSuccess);
if (isReadJsonSuccess){
rapidjson::Value &ps = doc["Projects"];
for (int i = 0; i < ps.Size(); i++) {
rapidjson::Value &item = ps[i];
string str1 = item["path"].GetString();
cout << "str1----" << str1 << endl;
и выход из системы 'str1 ----. \ Templates \ 2D \ 314 \ 371 ֽ \ 2 D \ 314 \ 371 ֽ. Fuproj', я не использую формат кодирования строки '. \ Templates \ 2D \ 314 \ 371 ֽ \ 2 D \ 314 \ 371 ֽ. fuproj»,
и мое приложение qt на Mac в формате кодирования среды выполнения 'UTF-8', кажется, что GB2312 конвертирует в UTF-8.
как показать строку GB2312 '. \ Templates \ 2D 贴纸 \ 2D 贴纸 .fuproj' прямо в приложении qt на макросах, большое спасибо!