• 可执行版本下载:https://github.com/neil3d/excel2json/releases
  • 完整项目源代码下载:https://github.com/neil3d/excel2json
  • 主要功能是:把Exce的l表单转换成json对象,并保存到一个文本文件中
  • 详细帮助文档请见:https://neil3d.github.io/app/excel2json.html

超级快的Excel转换工具,比使用Excel COM组件或者OLE DB的方式快100倍。支持转换成JOSN、SQL等数据输出。

主要功能:

  • 把Excel表单转换成Json对象,并保存到一个文本文件中。支持将表中内容转换成Array,或者以第一列为ID的字典对象
  • 把Excel表单转换成SQL文本;
  • 把Excel的表头转换成C#的struct数据定义代码。

由于这里使用OpenXML格式直接解析,所以只支持.xlsx文件,并不支持.xls文件。

支持GUI模式和命令行模式

GUI模式方便预览;而命令行式,方便将多个表格转换工作写成一个批处理文件(.bat或者.sh),一键处理几十个表格。 例如,使用下面这个.bat批处理文件,可以一次性转换”.\excel”目录下所有的.xlsx文件到”.\json”目录:

@SET EXCEL_FOLDER=.\excel
@SET JSON_FOLDER=.\json
@SET EXE=.\excel2json.exe @ECHO Converting excel files in folder %EXCEL_FOLDER% ...
for /f "delims=" %%i in ('dir /b /a-d /s %EXCEL_FOLDER%\*.xlsx') do (
@echo processing %%~nxi
@CALL %EXE% --excel %EXCEL_FOLDER%\%%~nxi --json %JSON_FOLDER%\%%~ni.json --header 3
)


命令行参数

  • -e, –excel Required. 输入的Excel文件路径.
  • -j, –json 指定输出的json文件路径.
  • -s, –sql 指定输出的SQL文件路径.
  • -p, –csharp 指定输出的C#数据定义代码文件路径.
  • -h, –header Required. 表格中有几行是表头.
  • -c, –encoding (Default: utf8-nobom) 指定编码的名称.
  • -l, –lowcase (Default: false) 自动把字段名称转换成小写格式.

例如:excel2json –excel test.xlsx –json test.json –header 3 –array true,其中的输入和输出文件,都在当前目录下;

Excel表单格式约定

  • 第一行固定作为列名(用来构造json字段名称);
  • 第一列固定作为对象的ID;
  • 读取Excel Workbook中的第一个sheet;
  • 对于SQL导出模式:第二行固定为字段类型
  • 使用表头生成C#数据定义代码

在Mac、Linux上运行

这个小工具使用C#编写,编译出来的.exe通过Mono即可在Mac或者Linux上运行。

C# Excel转换成Json工具(含源码)的更多相关文章

  1. excel导入数据库实例(含源码 超级详细适合新手)

    (案例的源码在我的百度网盘里,需要的朋友可以加我微信分享,gqljxg1514) 所有文件一览: 运行结果图: 1,首先创建实体类Student.java package com.b510.excel ...

  2. Java读取Excel转换成JSON字符串进而转换成Java对象

    Jar包

  3. TexturePacker大图还原成小图工具带源码

    TexturePacker是一个把好多小图打成大图的软件,生成的是大图以及小图在大图位置的.plist描述文件,但是不支持把大图还原成小图.网上偷的图一般都是大图和plist,想得到小图比较麻烦,于是 ...

  4. 自制小工具含源码——SPTC上海交通卡余额查询

    说明 需求 开发 其他

  5. 分享一个小工具:Excel表高速转换成JSON字符串

    在游戏项目中一般都须要由策划制作大量的游戏内容,当中非常大一部分是使用Excel表来制作的.于是程序就须要把Excel文件转换成程序方便读取的格式. 之前项目使用的Excel表导入工具都是通过Offi ...

  6. 使用jxl读取excel内容,并转换成Json,用于Datagrid

    一.上传excel文件,得到InputStream,由InputStream得到Jxl中的Workbook,取出内容,存到二维数组中. 1.使用 Jquery Uploadify 插件(http:// ...

  7. Java读取Excel文件转换成JSON并转成List——(七)

    Jar包

  8. C 简单处理excel 转成 json

    引言 工作中常需要处理excel转json问题. 希望这篇博文能简单描述这个问题.并提供一种解决思路.提升感悟. 今天我们处理的事就是为了把 xlsm => json. 一种方式是. 去 goo ...

  9. JSON详解以及可以把javabean转换成json串的json-lib应用

    JSON 1. json是什么 它是js提供的一种数据交换格式! 2. json的语法 {}:是对象! 属性名必须使用双引号括起来!单引不行!!! 属性值:null,数值,字符串,数组:使用[]括起来 ...

随机推荐

  1. 基于create-react-app的再配置

    前面的话 使用Facebook官方推出的create-react-app脚手架,我们基本可以零配置搭建基于webpack的React开发环境.但是,如果需要个性化定制,则还需要基于create-rea ...

  2. hdu-2328(暴力枚举+kmp)

    题意:给你n个字符串,问你这n个串的最长公共子串 解题思路:暴力枚举任意一个字符串的所有子串,然后暴力匹配,和hdu1238差不多的思路吧,这里用string解决的: 代码: #include< ...

  3. AMD三代锐龙箭在弦上:如此家族堪称豪华

    AMD将于今年年中正式推出第三代Ryzen锐龙处理器,即不集成显示芯片的纯CPU产品,外界猜测可能的时间点会是5月底的台北电脑展. 虽说依然采用AM4接口,也就是X370/470老主板可无压力兼容,但 ...

  4. 创建第一个Djiago

    Djiago 目录介绍 mysite/ ├── manage.py # 管理文件 └── mysite # 项目目录 ├── __init__.py ├── settings.py # 配置 ├── ...

  5. Qt5 入门

    main()函数中第一句是创建一个QApplication类的实例. 对于 Qt 程序来说,main()函数一般以创建 application 对象(GUI 程序是QApplication,非 GUI ...

  6. 了解AutoCAD对象层次结构 —— 2 ——文档

    再次想象另外一个场景:启动AutoCAD程序后,您新建了两个.dwg文件,也就是说创建了两个文档(Document)对象.将窗口进行层叠,您看到的窗口应该与下图类似: 图 4‑3 如何访问这些文档呢? ...

  7. net core 2.0 + Autofac的坑

    控制器不能从容器中解析出来; 只是控制器构造函数参数.这意味着控制器生命周期,属性注入和其他事情不由Autofac管理 - 它们由ASP.NET Core管理.可以通过指定AddControllers ...

  8. docker资料---仓库搭建

    以下步骤均为本人亲自踩坑,历经数次失败,最终搭建成功 一.环境信息: 操作系统:CentOS 7 Docker版本:1.12.5 (更高版本应该类似) registry:2.4.1 registry- ...

  9. Eclipse 安装Activiti插件(BPMN打开工具)

    在Eclipse的菜单中打开help -> install new software: 单击add: Name: Activiti BPMN 2.0 designer Location: htt ...

  10. [WC2018]即时战略——动态点分治(替罪羊式点分树)

    题目链接: [WC2018]即时战略 题目大意:给一棵结构未知的树,初始时除1号点其他点都是黑色,1号点是白色,每次你可以询问一条起点为白色终点任意的路径,交互库会自动返回给你这条路径上与起点相邻的节 ...