Поиск…


Строка Parse JSON с использованием библиотеки com.google.gson в Java

Для использования этого кода необходимо добавить библиотеку 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();

Разбор строки JSON в JavaScript

В 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)

Недопустимые строки будут вызывать ошибку JavaScript

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 включает в себя необязательную функцию JSON.parse которая может ограничивать или изменять результат анализа

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 внутри функции reviver.

Parse JSON файл с Groovy

Предположим, что мы имеем следующие данные JSON:

{
    "TESTS": 
    [
         {
              "YEAR": "2017",
              "MONTH": "June",
              "DATE": "28"                  
         }
    ]
}

import groovy.json.JsonSlurper

класс 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