본문으로 건너뛰기

Lua 값을 JSON 문자열로 변환 (json.encode)

선언

JSON 텍스트, 오류 정보 = json.encode()

매개변수


  • 테이블, 문자열, 숫자, 불리언 또는 json.null. json 텍스트로 변환할 lua 값입니다.

반환값

  • JSON 텍스트
    문자열 또는 nil. 변환에 성공하면 json 문자열을, 실패하면 nil을 반환합니다.
  • 오류 정보
    문자열 또는 nil. 변환에 실패하여 JSON 텍스트 값이 nil인 경우 구체적인 오류 정보를 반환합니다.

설명

lua의 데이터 값을 json 형식으로 변환하면 다른 언어와 데이터를 주고받기 편리합니다.
주의: 모든 lua 값을 json으로 변환할 수 있는 것은 아닙니다. 예를 들어 userdata, 함수, 또는 userdata나 함수를 포함한 테이블은 변환할 수 없습니다.
이 함수는 XUI에서 사용할 수 있습니다.

예제

local tb = {
["name"] = "alice",
["message"] = "hello, world",
scores = {
90, 85, 72, 100, 68,
},
nullvalue = json.null,
}
local jsonstr = json.encode(tb)
sys.alert(jsonstr)
--
local tmp = json.decode(jsonstr)
sys.alert(tmp.scores[4])
sys.alert(tostring(tmp.nullvalue))

참고: 위 코드에서는 이 장에서 설명하지 않는 함수인 sys.alert를 사용합니다.