JSON
JSON 문자열 파싱하기
수색…
자바에서 com.google.gson 라이브러리를 사용하여 JSON 문자열 구문 분석하기
이 코드를 사용하려면 com.google.gson
라이브러리를 추가해야합니다.
다음은 예제 문자열입니다.
String companyDetails = {"companyName":"abcd","address":"abcdefg"}
JSON 문자열은 Java의 아래 구문을 사용하여 파싱 할 수 있습니다.
JsonParser parser = new JsonParser();
JsonElement jsonElement = parser.parse(companyDetails);
JsonObject jsonObj = jsonElement.getAsJsonObject();
String comapnyName = jsonObj.get("companyName").getAsString();
JavaScript에서 JSON 문자열 구문 분석하기
JavaScript에서는 JSON
객체를 사용하여 JSON 문자열을 구문 분석합니다. 이 방법은 최신 브라우저 (IE8 +, Firefox 3.5 이상 등)에서만 사용할 수 있습니다.
유효한 JSON 문자열이 파싱되면 결과는 JavaScript 객체, 배열 또는 다른 값입니다.
JSON.parse('"bar of foo"')
// "bar of foo" (type string)
JSON.parse("true")
// true (type boolean)
JSON.parse("1")
// 1 (type number)
JSON.parse("[1,2,3]")
// [1, 2, 3] (type array)
JSON.parse('{"foo":"bar"}')
// {foo: "bar"} (type object)
JSON.parse("null")
// null (type object)
잘못된 문자열은 자바 스크립트 오류를 발생시킵니다.
JSON.parse('{foo:"bar"}')
// Uncaught SyntaxError: Unexpected token f in JSON at position 1
JSON.parse("[1,2,3,]")
// Uncaught SyntaxError: Unexpected token ] in JSON at position 7
JSON.parse("undefined")
// Uncaught SyntaxError: Unexpected token u in JSON at position 0
JSON.parse
메서드에는 구문 분석 결과를 제한하거나 수정할 수있는 선택적 reviver 함수가 포함되어 있습니다.
JSON.parse("[1,2,3,4,5,6]", function(key, value) {
return value > 3 ? '' : value;
})
// [1, 2, 3, "", "", ""]
var x = {};
JSON.parse('{"a":1,"b":2,"c":3,"d":4,"e":5,"f":6}', function(key, value) {
if (value > 3) { x[key] = value; }
})
// x = {d: 4, e: 5, f: 6}
마지막 예제에서 JSON.parse
는 undefined
값을 반환합니다. 이를 막기 위해 리버버 기능 내부의 value
반환하십시오.
JSON 파일을 Groovy로 파싱하기
다음 JSON 데이터가 있다고 가정합니다.
{
"TESTS":
[
{
"YEAR": "2017",
"MONTH": "June",
"DATE": "28"
}
]
}
groovy.json.JsonSlurper 가져 오기
class JSONUtils {
private def data;
private def fileName = System.getProperty("jsonFileName")
public static void main(String[] args)
{
JSONUtils jutils = new JSONUtils()
def month = jutils.get("MONTH");
}
아래는 파서입니다.
private parseJSON(String fileName = "data.json")
{
def jsonSlurper = new JsonSlurper()
def reader
if(this.fileName?.trim())
{
fileName = this.fileName
}
reader = new BufferedReader(new InputStreamReader(new FileInputStream(fileName),"UTF-8"));
data = jsonSlurper.parse(reader);
return data
}
def get(String item)
{
def result = new ArrayList<String>();
data = parseJSON()
data.TESTS.each{result.add(it."${item}")}
return result
}
}
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow