Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Json:Unicode字符集';%';在语句末尾转义_C++_Json_Escaping - Fatal编程技术网

C++ Json:Unicode字符集';%';在语句末尾转义

C++ Json:Unicode字符集';%';在语句末尾转义,c++,json,escaping,C++,Json,Escaping,在我的代码中,当我试图在转义的命令行上打印“%”字符时(即它没有打印在命令提示符上),我相信Json编译器正在转义该字符 我使用JJU-C++源代码,用于JSON/P> 我应该怎么做才能保留“%”字符。下面是我的代码片段和writer.cpp 代码段: progVal = mrLdProgress_.fgi.reProgress.progress; objVd["Progress%"] = json::Number((int)((U32)(progVal)* 100 /0xFFFF));

在我的代码中,当我试图在转义的命令行上打印“%”字符时(即它没有打印在命令提示符上),我相信Json编译器正在转义该字符

我使用JJU-C++源代码,用于JSON/P> 我应该怎么做才能保留“%”字符。下面是我的代码片段和writer.cpp

代码段:

progVal = mrLdProgress_.fgi.reProgress.progress;
objVd["Progress%"] = json::Number((int)((U32)(progVal)* 100 /0xFFFF));
    if(progVal == 0xFFFF)
    {
        objVd["Status"] =json::String("Completed");
        objVd["Estimated Time Left"] = json::String("-");
    }
    else
    {
        objVd["Status"] =json::String("In progress");
    }
writer.cpp的代码段,实际打印Json“name”:“value”:

字符串“Progress%”在这里是真正的罪魁祸首,只打印转义%字符的进度

我已尝试将控制字符“\”添加到下一行

> Writer::printf("%s%s",it->name.c_str(),"\" : ");
因此,在命令提示符上打印%符号,但我得到一个编译器错误

所以请在这个问题上帮助我

当我在上面的语句中添加“%”时,符号%将打印在命令提示符上

本期的产出:

{
"My Operation":[
{
        "Operation Status" : {
                "Count of operation" : 0,
                "Status" : "Success",
                "Description" : "None"
        },
        "Response Data" : {
                "Count Operation Status" : [
                        {
                                "Count" : 0,
                                "Operation" : "INIT",
                                "Progress" : "-",
                                "Status" : "Not in progress",
                        }
                ]
        }
}
]
} 

正如您在输出中看到的,进度%未显示,仅显示进度

你使用的是哪个JSON库?我没有使用JSON库,我使用的是JJU-C++源代码,JSOND是有用的信息,包括在你的问题中。谢谢,我已经添加了…
{
"My Operation":[
{
        "Operation Status" : {
                "Count of operation" : 0,
                "Status" : "Success",
                "Description" : "None"
        },
        "Response Data" : {
                "Count Operation Status" : [
                        {
                                "Count" : 0,
                                "Operation" : "INIT",
                                "Progress" : "-",
                                "Status" : "Not in progress",
                        }
                ]
        }
}
]
}