Java Код для извлечения всех значений для указанного ключа из вложенного json. [Как преобразовать ниже python в java] - PullRequest
0 голосов
/ 27 февраля 2020

https://hackersandslackers.com/extract-data-from-complex-json-python/-> взял приведенный ниже код python отсюда

Мне действительно нужен код java для извлечения всех значений пользовательского ввода указанной клавиши из вложенного json. Он принимает json в качестве ввода с именем ключа и возвращает список всех значений для этого конкретного ключа во вложенном json. У меня проблемы с преобразованием, так как обход через json узел с использованием java более сложный. У кого-нибудь есть подобное решение?

def extract_values(obj, key):
    """Pull all values of specified key from nested JSON."""
    arr = []

    def extract(obj, arr, key):
        """Recursively search for values of key in JSON tree."""
        if isinstance(obj, dict):
            for k, v in obj.items():
                if isinstance(v, (dict, list)):
                    extract(v, arr, key)
                elif k == key:
                    arr.append(v)
        elif isinstance(obj, list):
            for item in obj:
                extract(item, arr, key)
        return arr

    results = extract(obj, arr, key)
    return 
...