相关疑难解决方法(0)

如何在Delphi XE2中解析嵌套的JSON对象?

我是JSON的新手,我手上有这个项目,需要我解析一个JSON并在ListView中显示它的一些内容.问题是我现在阅读的文档处理的是包含JSON数组的JSON对象,而我的案例涉及处理嵌套对象.简而言之,这里是摘要:我正在使用带有DBXJSON的Delphi XE2.我将一些值发布到服务器,并使用看起来像这样的JSON对象进行回复:

    {
    "products": {
        "Men's Sneakers": {
            "instock": false,
            "size": "423",
            "manufacturer": "Adidas",
            "lastcheck": "20120529"
        },
        "Purse": {
            "instock": true,
            "size": "not applicable",
            "manufacturer": "Prada",
            "lastcheck": "20120528"
        },
        "Men's Hood": {
            "instock": false,
            "size": "M",
            "manufacturer": "Generic",
            "lastcheck": "20120529"
       }
    },
   "total": 41,
   "available": 30
}
Run Code Online (Sandbox Code Playgroud)

我想要实现的是将每个项目(即Purse)解析并添加为listview中的标题,以及一个子项目(制造商).我创建了一个以JSON字符串作为参数的过程,创建了JSON对象,但我不知道如何进一步解析嵌套对象.

procedure TForm1.ParseString(const AString: string);
var
  json          : TJSONObject;
  jPair         : TJSONPair;
  jValue        : TJSONValue;
  jcValue       : TJSONValue;
  l,i           : Integer;
begin
    json    := TJSONObject.ParseJSONValue(TEncoding.ASCII.GetBytes(AString),0) as TJSONObject;
  try
    //get the pair to evaluate …
Run Code Online (Sandbox Code Playgroud)

delphi json nested delphi-xe2

15
推荐指数
2
解决办法
4万
查看次数

用于XE2的Delphi JSON库可用于对象序列化

Delphi似乎有一些JSON选项 - 是否有推荐的库用于XE2?我正在寻找Delphi XE2和PHP Web应用程序之间的对象共享.(以兼容的方式为PHP Web应用程序序列化和发布delphi对象,并从宁静的PHP调用到delphi服务器端进行反序列化)

delphi json delphi-xe2

13
推荐指数
4
解决办法
2万
查看次数

Delphi:JSON数组

试图了解Delphi中的JSON.使用模块"DBXJSON.pas".如何使用它来制作这样一个数组:

Array:[
        {"1":1_1,"1_2_1":1_2_2},
        ...,
   ]
Run Code Online (Sandbox Code Playgroud)

这样做:

JSONObject:=TJSONObject.Create;
JSONArray:=TJSONArray.Create();
...
JSONArray.AddElement(TJSONObject.Create(TJSONPair.Create('1','1_1')));
JSONArray.AddElement(TJSONObject.Create(TJSONPair.Create('1_2_1','1_2_2')));
JSONObject.AddPair('Array',JSONArray);
Run Code Online (Sandbox Code Playgroud)

,但得到这个:

{
"Array":[
{"1":"1_1"},{"1_2_1":"1_2_2"}
]
}
Run Code Online (Sandbox Code Playgroud)

请帮忙!谢谢!

delphi json

7
推荐指数
1
解决办法
2万
查看次数

Delphi解码json/utf8转义文本

我正在为复杂的应用程序编写一个模块,我的模块应该处理由Web服务器返回的json响应.所以,我的问题是如何解码这种文本:

\u041f\u043e\u0438\u0441\u043a \u043f\u043e \u0444\u0430\u043c\u0438\u043b\u0438\u0438, \u0438\u043c\u0435\u043d\u0438 (\u043e\u0442\u0447\u0435\u0441\u0442\u0432\u0443
Run Code Online (Sandbox Code Playgroud)

它是西里尔文本,Mozilla Firefox应该显示它.我该如何处理这些人?我在Delphi 2010上.

delphi unicode json escaping codepages

3
推荐指数
1
解决办法
1万
查看次数

标签 统计

delphi ×4

json ×4

delphi-xe2 ×2

codepages ×1

escaping ×1

nested ×1

unicode ×1