【问题标题】:How to parse file with lot of json?如何解析包含大量 json 的文件?
【发布时间】:2015-07-09 10:07:27
【问题描述】:

我需要解析包含多个 JSON 的大文件。我没有找到任何方法来做到这一点。文件看起来像 mongoDB 的 BSON。 文件示例:

{"column" : value, "column_2" : value}
{"column" : valeu, "column_2" : value}
....

【问题讨论】:

标签: java json parsing


【解决方案1】:

您需要确定文件中一个 JSON 的开始位置和另一个结束位置。如果每个 JSON 在单独的行上,那么这很容易,如果不是:您可以循环查找左大括号和右大括号,定位每个 JSON 之间的点。

    char[] characters;
    int openBraceCount = 0;
    ArrayList<Integer> breakPoints = new ArrayList<>();

    for(int i = 0; i < characters.length; i++) {
        if(characters[i] == '{') {
            openBraceCount++;
        } else if(characters[i] == '}') {
            openBraceCount--;

            if(openBraceCount == 0) {
                breakPoints.add(i + 1);
            }
        }
    }

然后,您可以在每个断点处拆分文件,并将单个 JSON 传递到您最喜欢的 JSON 库中。

【讨论】:

    猜你喜欢
    • 2015-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多