V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
run27017
V2EX  ›  分享创造

分享一波 JSON 转表格的工具

  •  
  •   run27017 · 2018-09-18 16:03:47 +08:00 · 11308 次点击
    这是一个创建于 2285 天前的主题,其中的信息可能已经有所发展或是发生改变。
    一个将 JSON 数据转化为各种表格显示的工具,支持复杂的嵌套格式,嵌套的 JSON 会以合并单元格的方式显示。

    https://gitee.com/run27017/nested-json-to-table
    18 条回复    2021-08-30 12:44:50 +08:00
    sunorg
        1
    sunorg  
       2018-09-18 18:07:46 +08:00 via Android
    data table
    jqgrid
    run27017
        2
    run27017  
    OP
       2018-09-18 18:37:26 +08:00
    @sunorg 不是一种形式的轮子
    sunorg
        3
    sunorg  
       2018-09-18 19:24:57 +08:00 via Android
    @run27017 一样支持 json
    nameryan
        4
    nameryan  
       2018-09-19 09:21:23 +08:00
    gitee 是啥,github 兄弟?
    run27017
        5
    run27017  
    OP
       2018-09-19 16:44:52 +08:00
    @sunorg 我试用了一下 jqgrid,首先它和 nested-json-to-table 的场景不一样:jqgrid 着眼于在网页上以表格的形式渲染 JSON 数据;而 nested-json-to-table 更加抽象,它设法通过构建 Builder 来实现真正的渲染细节,从而能够将 JSON 数据数据转化为其他格式显示,如 HTML、Excel 等。

    第二点是,针对 nested 的数据,二者的想法不一样。jqgrid 要写更多的样板代码来定制如何渲染,如这个例子里说明的: http://www.ok-soft-gmbh.com/jqGrid/SubgridWithLocalGrid.htm ,它里面是通过点击一个加号来展开 nested 数据;而 nested-json-to-table 天然支持 nested 的数据,是以合并单元格的形式实现的,所谓开箱即用,不用写多余的配置代码。虽然说 nested-json-to-table 合并单元格的方式是固定的,但好在通用。试想一下,在 Excel 里面给出一个加号按钮做出展开操作该多难,倒不如合并单元格来得实在。

    我只试了 jqgrid,不知道 data table 是不是一样的套路,就没试了。总结一下就是,jqgrid 更适合在 HTML 里面定制实现数据的表格展示;而 nested-json-to-table 更加注重通用的实现,也就是给你一个工具,就可以把 JSON 数据直接转化为表格结构,连表头、宽高啥的都不用定义。
    run27017
        6
    run27017  
    OP
       2018-09-19 16:45:35 +08:00
    @nameryan 后期转到 github,谢谢!
    taurenshaman
        7
    taurenshaman  
       2018-09-21 11:35:20 +08:00
    我在用 Json-to-HTML-Table ( https://github.com/afshinm/Json-to-HTML-Table )和 jquery.dataTables.min.js ( datatables.net )。。。。。。
    效果:
    http://lore.chuci.info/taurenshaman/json/51f1391862d24101abd16b6e1221a1ca
    run27017
        8
    run27017  
    OP
       2018-09-21 18:25:56 +08:00
    @taurenshaman 感觉很可以呀,只不过里面的 JSON 不能编辑。我正在做一个配套的网站,可以传入任意的 JSON 数组,然后转化为 HTML Table。当然,也可以导出为 Excel ( Excel 的 Builder 还没做)。
    taurenshaman
        9
    taurenshaman  
       2018-09-22 14:08:41 +08:00
    @run27017 嗯嗯,Lore 在创建 /编辑时直接用的 JSON 编辑器( https://github.com/josdejong/jsoneditor ),浏览视图只会在一定条件下( JSON 对象含 items 属性并且值是数组类型)引入这俩库做可视化处理,正常情况下,就是代码高亮显示格式化后的 JSON 文本( https://github.com/yesmeck/jquery-jsonview ),嘿嘿
    hucheng91
        10
    hucheng91  
       2018-09-24 07:41:21 +08:00 via Android
    这个挺棒的
    hucheng91
        11
    hucheng91  
       2018-09-24 07:45:47 +08:00 via Android
    我觉得你这个代码设计很棒啊,meta 这个好好啊
    run27017
        12
    run27017  
    OP
       2018-09-25 20:45:36 +08:00
    @hucheng91 谢谢!还可以吧,虽然我也说不上来哪里好。就是现在还是雏形,Excel 不能转,要写 Builder 还是得花时间的。
    red0range
        13
    red0range  
       2018-11-23 13:45:07 +08:00
    nested-json 转成二维表更为常见

    目前遇到一个需求,需要转为为 excel
    研究代码中
    red0range
        14
    red0range  
       2018-11-23 14:32:11 +08:00
    http://www.xuxueli.com/xxl-excel/#/

    坛友作品
    正在参考
    chinaqzxh
        15
    chinaqzxh  
       2019-05-08 17:28:01 +08:00
    楼主,我用你这个导入 json 有的能导入 有的就是在加载 很郁闷
    run27017
        16
    run27017  
    OP
       2019-07-27 22:45:08 +08:00
    @chinaqzxh 难受。可以提 ISSUE.
    BinYang
        17
    BinYang  
       2021-01-15 09:34:50 +08:00
    作品下架了吗?还想试用一下试试的。哈哈
    run27017
        18
    run27017  
    OP
       2021-08-30 12:44:50 +08:00
    @BinYang 没有啊,改地址了。不怎么上 v2ex,哈哈。

    > https://github.com/yetrun/json5-to-table
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3277 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 10:36 · PVG 18:36 · LAX 02:36 · JFK 05:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.