Jump to content
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr ×
과거의 기술자료(읽기 전용): https://tech.devgear.co.kr
  • 0

JSONVIEWER 컴포넌트 델파이10.2 에서 사용여부?


델리나

질문

 

델파이 XE2 에서

C:\Users\Public\Documents\RAD Studio\9.0\Samples\Delphi\DataSnap\JSONViewer

JSON 컴포넌트 3개 TJSONDocument, TJSONParser, TJSONTreeView 가 있는데

델파이 XE 10.2 에서는 위 컴포넌트가 없나요?

GetHub 에도  TJSONParser 컴포넌트는 없네요

https://github.com/pglowack/DelphiJSONComponents

 

델파이 XE2 애서 사용된 json 컴포넌트가  XE 10.2 에서는 오류가 나서

기존 json 컴포넌트 사용 소스는 지우고 새로 코딩 해아 하는건지요?

xe 10.2 에서는 어떤걸 사용 하는지 궁금합니다.

 

 

 

 

이 댓글 링크
다른 사이트에 공유하기

1 answer to this question

Recommended Posts

  • 0

저의 경우에는 System.JSON을 사용하고 있습니다.

샘플 데이터가 다음과 같을 때

{
  "JsonVal_STR":"VALUE"
  "JsonVal_INT":429
  "JsonArray": [
    {"ArrKey":"KEY1"},
    {"ArrKey":"KEY2"},
    {"ArrKey":"KEY3"}
  ]
}

 

- 파싱

uses 
... System.JSON // 추가

...
procedure JSONParse(JSON_SAMPLE:String);
var
  JsonObj : TJsonObject;
  JsonArr : TJsonArray;
  JsonArrObj : TJsonObject;
  
  json_Str : String;
  json_int : Integer;

  ArrjsonVal : array of String;
  i : Byte;
begin
  jsonObj := TJSONObject.ParseJSONValue(JSON_SAMPLE) as TJSONObject;
  json_str := jsonObj.GetValue<string>('JsonVal_STR', '기본값');
  json_str := jsonObj.GetValue<Integer>('JsonVal_INT', 0);

  jsonArr := jsonObj.GetValue("JsonArray") as TJSONArray;
  SetLength(ArrjsonVal , jsonArr.Count);
  for i := 0 to jsonArr.Count -1 do
  begin
    JsonArrObj := jsonArr.Items[i] as TJSONObject;
    ArrjsonVal[i] := JsonArrObj.GetValue<string>('ArrKey', '기본값');
  end;
end;

- 쓰기

procedure JSONWrite(JSON_SAMPLE:String);
var
  JsonObj : TJsonObject;
  JsonArr : TJsonArray;
  JsonArrObj : TJsonObject;
  
  json_Str : String;
  json_int : Integer;

  ArrjsonVal : array of String;
  i : Byte;
begin
  jsonOBj := TJsonObject.Create;
  jsonArr := TJsonArray.Create;
  try
    jsonOBj.AddPair('JsonVal_STR', 'VALUE');  
    jsonOBj.AddPair('JsonVal_INT', TJsonNUMBER.Create(429));


    for i := 0 to 2 do
    begin
      JsonArrObj := TJsonObject.Create;
      try
        JsonArrObj.AddPair('ArrKey', 'KEY' + IntToStr(i));
        jsonArr.AddElement(JsonArrObj);
      finally
        JsonArrObj.Free;
      end;
    end;
    jsonOBj.AddPair('JsonArray', JsonArr);
    
    ShowMessage(JsonObj.ToString); // 작성한 JSON 데이터 확인
  finally
    jsonArr.Free;
    jsonOBj.Free;
  end;
end;


출처 : https://blog.naver.com/miniuser_/223142057994
 

데브기어에 JSON 관련 내용이 정리되어 있어 공유드리며,

아래 사이트를 한번 참고하시면 좋을 것 같습니다.

참고사이트 : 

 

이 댓글 링크
다른 사이트에 공유하기

이 토의에 참여하세요

지금 바로 의견을 남길 수 있습니다. 그리고 나서 가입해도 됩니다. 이미 회원이라면, 지금 로그인하고 본인 계정으로 의견을 남기세요.

Guest
이 질문에 답변하기...

×   서식있는 텍스트로 붙여넣기.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   이전에 작성한 콘텐츠가 복원되었습니다..   편집창 비우기

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

중요한 정보

이용약관 개인정보보호정책 이용규칙 이 사이트가 더 잘 작동하기 위해 방문자의 컴퓨터에 쿠키가 배치됩니다. 쿠키 설정 변경에서 원하는 설정을 할 수 있습니다. 변경하지 않으면 쿠키를 허용하는 것으로 이해합니다.