我知道至少有数百个例子,但我找不到最适合我的例子。 我有一个像这样显示的字符串(包含所有空格,反斜杠等):
string textInfo = "{\n \"code\": null,\n \"success\": true,\n \"data\": [\n {\n \"id\": 109322,\n \"name\": \"Name Surname\",\n \"display_name\": \"Name SURNAME\",\n \"city\": \"Bellair\\u00eb\",\n \"zip\": \"24000\",\n \"street\": \"boulevard 21\"\n }\n ],\n \"message\": null,\n \"total\": 1\n}"
我想仅提取另一个字符串上的id,或名称或消息。例如:
string resultID = "109322" //for my id
string resultName = "Name Surname" //for my name
等...
非常感谢您花时间和精力帮助我。
亲切的问候
答案 0 :(得分:1)
您要使用哪种语言?
由于您的字符串是JSON格式,请尝试使用JSON解析器解析它,然后从对象中读取
答案 1 :(得分:0)
如Jon所述,此字符串采用JSON(Javascript Object Notation)格式。
每种语言都有一种方法可以将JSON转换为一个对象,您可以从中提取每个属性作为属性。在javascript中,您可以使用JSON.stringify(textInfo)
来表示对象表单中的数据。
机制如下所示:
jsonString = "{\n \"code\": null,\n \"success\": true,\n \"data\": [\n {\n \"id\": 109322,\n \"name\": \"Name Surname\",\n \"display_name\": \"Name SURNAME\",\n \"city\": \"Bellair\\u00eb\",\n \"zip\": \"24000\",\n \"street\": \"boulevard 21\"\n }\n ],\n \"message\": null,\n \"total\": 1\n}"
dataObject = JSON.parse(jsonString)
var resultID = dataObject.data.id //for my id
var resultName = dataObject.data.name //for my name
可以类似地查询其余属性。
作为参考,这是一个"美化"您的JSON数据的版本:
{
"code":null,
"success":true,
"data":[
{
"id":109322,
"name":"Name Surname",
"display_name":"Name SURNAME",
"city":"Bellairë",
"zip":"24000",
"street":"boulevard 21"
}
],
"message":null,
"total":1
}
答案 2 :(得分:0)
我感觉很难不努力。无论如何这里是我的Windows应用程序C#
的工作代码string jsonString = "{\n \"code\": null,\n \"success\": true,\n \"data\": [\n {\n \"id\": 109322,\n \"name\": \"Name Surname\",\n \"display_name\": \"Name SURNAME\",\n \"city\": \"Bellair\\u00eb\",\n \"zip\": \"24000\",\n \"street\": \"boulevard 21\"\n }\n ],\n \"message\": null,\n \"total\": 1\n}"
JObject jsonObj = JObject.Parse(jsonString);
return (string)jsonObj["data"][0]["id"];
输出为:109322