从字符串获取JsonObject时出错
我在这个问题上挣扎了很长时间。 事实上,我有一个二维码,其中包含以下文字:从字符串获取JsonObject时出错,json,xamarin.android,Json,Xamarin.android,我在这个问题上挣扎了很长时间。 事实上,我有一个二维码,其中包含以下文字: { "Version ": 0x1, "Type ": "MapPoint ", "X ": 2, "Y ": 3} 然后我将此QR码的内容转换为Json对象: JSONObject scanQRCode = new JSONObject(contents); 调试时,我发现字符串内容如下所示: " { \"Version \": 0x1, \"Type \": \"MapPoint \", \"X \":
{ "Version ": 0x1, "Type ": "MapPoint ", "X ": 2, "Y ": 3}
然后我将此QR码的内容转换为Json对象:
JSONObject scanQRCode = new JSONObject(contents);
调试时,我发现字符串内容如下所示:
" { \"Version \": 0x1, \"Type \": \"MapPoint \", \"X \": 2, \"Y \": 3} "
ScanQRCode等于:
{{"Version ":1,"Type ":"MapPoint ","X ":2,"Y ":3}} Org.Json.JSONObject
在我的代码中,我必须验证这个条件,得到双X和Y,如下所示:
if (scanQRCode.Has("Version") && scanQRCode.GetInt("Version") >= 0x1 && scanQRCode.Has(KEY_QR_TYPE) && scanQRCode.GetString("Type").Equals(("MapPoint")))
{
float x = (float)scanQRCode.GetDouble("X");
float y = (float)scanQRCode.GetDouble("Y");
}
问题是这个条件永远都不能满足,我甚至不能得到双X
你能告诉我怎么了吗
{ "Version": "0x1", "Type":"MapPoint", "X": 2, "Y": 3}
这已经是一个json对象,无需再次转换,您可以直接使用它,如下所示
var a = { "Version": "0x1", "Type":"MapPoint", "X": 2, "Y": 3}
float x = a.X;
这已经是一个json对象,无需再次转换,您可以直接使用它,如下所示
var a = { "Version": "0x1", "Type":"MapPoint", "X": 2, "Y": 3}
float x = a.X;
{“Version”:“0x1”,“Type”:“MapPoint”,“X”:2,“Y”:3}
是二维码的文本I码。但是我得到了它的内容,它等于:“{\'Version\”:0x1,“Type\”:“MapPoint\”,“X\”:2,“Y\”:3}“
{code>“{”Version:“0x1”,“Type:“MapPoint”,“X”:2,“Y”:3}是我对二维码进行编码的文本。但是我得到了它的内容,它等于:“{\'Version\”:0x1,\'Type\”:“MapPoint\”,“X\”:2,\'Y\”:3}“