On Wed, 12 Aug 2015, Chris Moody wrote:

_______________________________________________

Hi Michael,

Thanks or the feedback. Just to make sure I'm understanding this, here is some more information, part of the JSON feed I'm working with will look like this:

"add":["URL1","URL2","URL3"]

My intention was to be able to get the keys under "add" and turn it into an array.

So if I'm understanding this correctly, I have to do something like the following:

var
J:TJSONData;
A1:TJSONArray;
A2:Array of String;
E : TJSONEnum;

begin
// Put JSONData into J
for E in J do
 if E.Key = 'add' then
     //Somehow copy add from J to A1
    // Use your code to copy A1 into A2
end;


Is this the right way of looking at it?

Yes, but you can do it more simple:

Var
  J : TJSONData;
  MyArray : Array of string;
  MyJSONArray : TJSONArray;
  i : Integer;

begin
  // Put JSONData into J

  MyJSONArray:=(J as TJSONObject).Arrays['add'];
  SetLength(MyArray,MyJSONArray.Count);
  For I:=0 to MyJSONArray.Count-1 do
    MyArray[i]:=MyJSONArray.Strings[i];

end.


I have checked what is available online and not finding a lot as far as how to work with JSON, hopefully this will improve. Once I finish this software, I'd be more than happy to help in donating time for making new Wiki pages as far as this subject is concerned.

There is a lot of code out there that works with JSON.

I wrote an article long time ago that describes the JSON support:

http://www.freepascal.org/~michael/articles/webdata/webdata.pdf

Page 11 and following.

the fpjson unit is documented:
  http://www.freepascal.org/docs-html/fcl/fpjson/index.html

Hope this helps,

Michael.
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

Reply via email to