Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[15083] Re:json에서 한글깨짐 문제 조언좀 부탁합니다
gomsun2 [vhrvnd723] 4685 읽음    2014-03-17 14:28
procedure TForm32.Button2Click(Sender: TObject);
const
  hochul = '{"아이피":"192.168.21.100","date":"2014-03-16","time":"22:23:01"}';
var
  JSON: TJSONObject;
  I: Integer;
  rec_data: string;
begin
  rec_data := trim(hochul);
  JSON := TJSONObject.ParseJSONValue(rec_data) as TJSONObject;
  try
    Memo1.Lines.Add(JSON.ToString);
    for I := 0 to JSON.Size - 1 do
      Memo1.Lines.Add(JSON.Get(I).JsonString.Value + ' : ' + JSON.Get(I).JsonValue.Value);
  finally
    JSON.Free;
  end;
end;


외부에서 json string을 받아 오신다면 TStringStream, TBytesStream을 활용하시면 됩니다.

const
  hochul = '{"아이피":"192.168.21.100","date":"2014-03-16","time":"22:23:01"}';
var
  JSON: TJSONObject;
  I: Integer;
  rec_data: TStringStream;
begin
  rec_data := TStringStream.Create(hochul, TEncoding.UTF8);
  JSON := TJSONObject.ParseJSONValue(rec_data.DataString) as TJSONObject;
  try
    Memo1.Lines.Add(JSON.ToString);
    for I := 0 to JSON.Size - 1 do
      Memo1.Lines.Add(JSON.Get(I).JsonString.Value + ' : ' + JSON.Get(I).JsonValue.Value);
  finally
    JSON.Free;
    FreeAndNil(rec_data);
  end;


나빌레나 님이 쓰신 글 :
: 다음은 작성한 문장입니다
: uses dbxjson;
:
: procedure TForm1.Button2Click(Sender: TObject);
: const hochul =
: '{"아이피":"192.168.21.100","date":"2014-03-16","time":"22:23:01"}';
: var
:
:   JSON: TJSONObject;
:   StringBytes: TBytes;
:   I: Integer;
:   rec_data : string;
: begin
:
:   rec_data    :=  trim(hochul);
:   StringBytes :=  ( TEncoding.utf8.GetBytes(rec_data);          
:   JSON        :=  TJSONObject.Create;
:   json        :=  tjsonobject.ParseJSONValue(stringbytes,0) as tjsonobject;
:
:   try
:       Memo1.Lines.Add(JSON.ToString);
:       for I := 0 to JSON.Size - 1 do
:           Memo1.Lines.Add(JSON.Get(i).JsonString.Value +  ' : ' + JSON.Get(i).JsonValue.Value);
:   finally
:     JSON.Free;
:   end;
: end;
:
: 결과는 이렇게 출력됩니다
:
: {"¾ÆAICC":"192.168.21.100","date":"2014-03-16","time":"22:23:01"}
: ¾ÆAICC : 192.168.21.100
: date : 2014-03-16
: time : 22:23:01
:
:
: 한글 "아이피"라른 부분만 깨집니다
: 환경은 del2010 입니다 dbxjson 부분을 수정해야 하는건지 저가 좀 json은 생소해서
: 고수님들의 한수 의견 부탁합니다.
:

+ -

관련 글 리스트
15075 json에서 한글깨짐 문제 조언좀 부탁합니다 나빌레나 5500 2014/03/17
15083     Re:json에서 한글깨짐 문제 조언좀 부탁합니다 gomsun2 4685 2014/03/17
15084         Re:Re:json에서 한글깨짐 문제 조언좀 부탁합니다 나빌레라 3897 2014/03/17
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.