zoukankan      html  css  js  c++  java
  • jackson jsonlines 处理-读取以及生成

    jsonlines 在数据分析处理以及批量json 处理中是比较常用的,以下是基于jackson 的处理

    场景说明

    基于jackson 读取以及生成jsonlines

    参考代码

    jsonlines 格式

    {"0":"ddd","1":"11","2":"111","3":"111"}
    {"0":"ddd","1":"12","2":"112","3":"112"}
    {"0":"ddd","1":"13","2":"113","3":"113"}
    ....
    • 读取
    public  static void readJsonLines() throws IOException {
        InputStream stream = Application.class.getClassLoader().getResourceAsStream("demoapp22.ldjson");
        JsonMapper reader=  JsonMapper.builder().build();
        MappingIterator<JsonNode> items = reader.readerFor(JsonNode.class).readValues(stream);
        while (items.hasNextValue()){
            System.out.println(items.nextValue());
        }
    }
    • 生成
    public static void writeExcelContent2JSONLines2(List<Object> input) throws ServerException, InsufficientDataException, ErrorResponseException, IOException, NoSuchAlgorithmException, InvalidKeyException, InvalidResponseException, XmlParserException, InternalException {
        try (OutputStream fileOutputStream = new FileOutputStream("demoapp22.ldjson")) {
            try (SequenceWriter seq = objectMapper.writer()
                  // withRootValueSeparator 此处是核心,需要符合jsonlines的格式,数据就是一个pojo
                    .withRootValueSeparator("
    ").writeValues(fileOutputStream)) {
                input.forEach(new Consumer<Object>() {
                    @SneakyThrows
                    @Override
                    public void accept(Object s) {
                        seq.write(s);
                    }
                });
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }

    说明

    以上基于jackson 进行jsonlines 的读取以及写入操作,对于需要集成jsonlines 的可以参考

    参考资料

    https://jsonlines.org/

  • 相关阅读:
    算法(第四版)2.1 初级排序算法
    数据类型:数值
    数据类型:null, undefined 和布尔值
    数据类型:概述
    9.6 http中间件
    9.5 处理http 请求
    9.4 简单httpserver
    9.3 多客户端TCP
    9.2 udp server
    资源竞争
  • 原文地址:https://www.cnblogs.com/rongfengliang/p/15222652.html
Copyright © 2011-2022 走看看