AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

JSON-Objekt/Array zu "normalem" Objekt/Array

Ein Thema von Durek · begonnen am 26. Aug 2010 · letzter Beitrag vom 26. Aug 2010
Antwort Antwort
Durek

Registriert seit: 26. Aug 2010
5 Beiträge
 
#1

JSON-Objekt/Array zu "normalem" Objekt/Array

  Alt 26. Aug 2010, 20:53
Hallo Community von Delphi-Praxis,
ich habe schon in "delphi-forum.de" nachgefragt aber dort kam keine Antwort, hier ist wohl etwas mehr los.

Mein Vorhaben:
Ich lese einen String aus einer MySQL-Tabelle aus. Den String kriege ich auch ohne Probleme, dieser String ist allerdings ein JSON-String, welcher durch die JSON Funktionen zu einem JSON-Objekt/Array wird. Damit ich dessen Elemente allerdings ganz normal mit Schleife oder Index auslesen kann, brauche ich allerdings einen "normalen" Array.

ich hoffe ich habe mich richtig ausgedrückt.
Die Klasse hier: http://www.progdigy.com/?page_id=6

Vielen Dank schonmal!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: JSON-Objekt/Array zu "normalem" Objekt/Array

  Alt 26. Aug 2010, 21:03
Die Klasse bietet doch Methoden dafür
Markus Kinzler
  Mit Zitat antworten Zitat
Durek

Registriert seit: 26. Aug 2010
5 Beiträge
 
#3

AW: JSON-Objekt/Array zu "normalem" Objekt/Array

  Alt 26. Aug 2010, 21:17
Du meinst die Verarbeitung mit diesem neuen Datentyp? Naja ich bin ein Delphianfänger, bin erst paar Tage dran und habe Probleme mich immer sofort an neue Methoden zu versuchen, ich habe auch öfters nach Beispielen gesucht, aber keine guten gefunden. Oder meinst Du es gibt Methoden zur Konvertierung?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: JSON-Objekt/Array zu "normalem" Objekt/Array

  Alt 26. Aug 2010, 21:25
Delphi-Quellcode:
for i := 0 to SuperArray.Length - 1 do
begin
    SuperObject := SuperArray.GetO( i); bzw. GetI, GetB, GetS, ...
end;
Markus Kinzler
  Mit Zitat antworten Zitat
Durek

Registriert seit: 26. Aug 2010
5 Beiträge
 
#5

AW: JSON-Objekt/Array zu "normalem" Objekt/Array

  Alt 26. Aug 2010, 22:06
ja, wenn das so einfach wäre denn mit "Length" krieg ich hier leider keine Anzahl von Elementen raus, er meckert dann mit "Undefinierter Bezeichner"
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: JSON-Objekt/Array zu "normalem" Objekt/Array

  Alt 26. Aug 2010, 22:09
Was für ein Typ hat der Aaray? Nicht TSuperArray?
Markus Kinzler
  Mit Zitat antworten Zitat
Durek

Registriert seit: 26. Aug 2010
5 Beiträge
 
#7

AW: JSON-Objekt/Array zu "normalem" Objekt/Array

  Alt 26. Aug 2010, 22:28
Also ich habe vorher "TSuperObject" gehabt, hab den in TSuperArray geändert aber da meckert er wenn ich

obj := TSuperObject.parseString(PWideChar(maps[i]),true);

(in maps[i] steckt der JSON-String)

anwende.

Wenn ich
obj := TSuperArray.parseString(PWideChar(maps[i]),true);
versuche, meckert er dass es den Bezeichner parseString nicht gibt.


mit
obj := TSuperArray(TSuperObject.parseString(PWideChar(map s[i]),true));

spuckt er mir bei obj.Length "4599200" Ist aber viel zu hoch.

Geändert von Durek (26. Aug 2010 um 22:36 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.007 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#8

AW: JSON-Objekt/Array zu "normalem" Objekt/Array

  Alt 26. Aug 2010, 23:03
Unter Zuhilfenahme der Anleitung auf der Google Code Seite.

Delphi-Quellcode:
var
  s: string;
  o: ISuperObject;
  i: Integer;
begin
  s := '{ "accounting" : [ ' +
    '{ "firstName" : "John", ' +
      '"lastName" : "Doe", ' +
      '"age" : 23 }, ' +
    '{ "firstName" : "Mary", ' +
      '"lastName" : "Smith", ' +
      '"age" : 32 } ' +
      '] }';

  o := SO(s).O['accounting'];

  for i := 0 to o.AsArray.Length - 1 do
    ShowMessage(o.AsArray[i].AsString);
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Durek

Registriert seit: 26. Aug 2010
5 Beiträge
 
#9

AW: JSON-Objekt/Array zu "normalem" Objekt/Array

  Alt 26. Aug 2010, 23:26
Die Endung .AsString hat mir gefehlt. Vielen Dank mit dieser Änderung kann ich schon viel anfangen
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz