一个基于C#开发的Excel转Json工具

Json在程序开发中是非常常用的数据格式,对于程序员来说,阅读和编辑Json都没有什么问题,但其他人就不是那么方便了。比如配置游戏数据:游戏角色、技能、道具的名称,策划书往往都是通过Excel配置,这样比较方便设置。但在程序运行时就需要Excel转为Json。

项目简介

这是一个基于C#开发的Excel转Json工具,比通过Office Excel组件访问数据性能提升100倍,支持界面、命令模式。

技术架构

1、Visual Studio 2012、.Net Framework 4.0

项目结构

一个基于C#开发的Excel转Json工具_第1张图片

主要功能

  1. 支持读取 Excel 97-2003的 .xls格式和2007的 .xlsx格式;

  2. 支持多个表单导出;

  3. 把Excel表单转换成Json对象,并保存到一个文本文件中。支持将表中内容转换成Array,或者以第一列为ID的字典对象;

  4. 将表头信息生成 C# 结构体定义代码;

  5. 进阶特性

  6. 通过特定的前缀排除掉表单或者列

  7. 自动识别和转换单元格内的 Json 格式字符串,并转换成为 Json Array 或者 Json Object

使用方式

支持命令模式与界面操作模式

1、命令模式

命令行参数

  • -e, –excel Required. 输入的Excel文件路径.

  • -j, –json 指定输出的json文件路径.

  • -h, –header Required. 表格中有几行是表头.

  • -c, –encoding (Default: utf8-nobom) 指定编码的名称.

  • -l, –lowcase (Default: false) 自动把字段名称转换成小写格式.

  • -a 序列化成数组

  • -d, --date:指定日期格式化字符串,例如:dd / MM / yyy hh: mm:ss

  • -s 序列化时强制带上sheet name,即使只有一个sheet

  • -exclude_prefix:导出时,排除掉包含指定前缀的表单和列,例如:-exclude_prefix #

  • -cell_json:自动识别单元格中的Json对象和Json数组,Default:false

@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
)

2、界面模式

一个基于C#开发的Excel转Json工具_第2张图片

一个基于C#开发的Excel转Json工具_第3张图片

项目地址:https://github.com/neil3d/excel2json

- End -

推荐阅读

  • 最新.NetCore/C#全栈视频教程入门教程

  • 一个基于.Net+Vue开发的开源权限工作流系统

  • 推荐一个不到2MB的C#开发工具箱,集成了上千个常用操作类

  • 推荐一个基于.NET Core 3.1开发开源的分布式任务调度系统

  • .Net服务器性能监控,应用耗时统一监控平台

专注分享编程知识、热门有用有趣的开源项目

你可能感兴趣的:(.NetCore,.netcore,开源)