TableML-GUI篇(Excel编译/解析工具)

简介:



项目情况

本文接上篇TableML Excel编译/解析工具,本文主要介绍GUI工具的使用,及配置项,如果你想了解此工具更加详细的说明,请阅读上篇文章。

项目地址:https://github.com/zhaoqingqing/TableML

 

项目介绍和更新日志

项目介绍

TableML, Table Markup Language, 基于电子表格的标记语言,

类似JSON, XML, INI,TableML可以作为软件项目的配置标记语言,

与之不同的是,您可以使用Excel等电子表格编辑软件来配置TableML,自由地添加图标、注释、VB脚本和预编译指令,再由TableML编译器导出干净的TSV格式的配置表表格,编辑方便,使用简单。

目前提供C#版本的运行时、编译器、代码生成器。

 

更新日志

https://github.com/zhaoqingqing/TableML/blob/custom/update_log.md

 

实现原理和功能介绍

技术原理

使用C#语言开发,底层使用NPOI库解析Excel,对npoi再次封装,简化开发难度。

通过模版引擎由Excel数据结构填充,生成对应的代码,无需人工编写读表代码。

Winform开发GUI界面  ,降低使用难度,给非技术类同事提供友好界面。

支持把解析后的Excel数据插入到数据库中。

 

  功能介绍

感谢Mr.Kelly的开源项目,我基于Kelly的TableML基础上进行扩展(https://github.com/mr-kelly/TableML),增加或修改以下功能:

  • 扩展支持多种格式的Excel配置 文件 ,比如首列为注释列,表头列在自定义行
  • 如果某列不需要,可以把表头列项置空
  • 支持可以为每一个Excel生成一个单独的C#文件类
  • 支持把数据插入到sql数据库中,并生成sql脚本(数据库脚本语言)
  • 提供GUI界面,原本已提供命令行模式
  • GUI支持文件拖动编译单个Excel,和编译某个文件的Excel,或者直接读取tsv文件
  • GUI上同时开发了辅助工具,用于检查Excel数据的合法性,字段名是否重复

     

    技术支持

    如果在使用过程中遇到问题或发现bug,欢迎与我联系。

    我的邮箱:569032731@qq.com

     

    TableML-GUI 

    读懂配置文件

    tablemlGUI.exe目前提供一份简易的xml配置文件,用于初始化tableml-gui

     
    打开tablemlGUI.exe所在的目录,找到app.config

     

  • 建议使用notepad++,sublime text,editplus等可以高亮xml关键词和语法,减少改错几率

     

    在app.config中,每一条重要的配置项都添加了注释说明(<!--中间是注释说明 -->),比如:

    复制代码
    <!--是否使用绝对路径;true:所有路径都是绝对的,完整路径;false:所有路径是相对于此exe的-->
    <add key="UseAbsolutePath" value="false" />
    
    <!--excel源文件路径-->
    <add key="srcExcelPath" value=".\..\Src\" />
    
    <!--excel编译后的database保存路径-->
    <add key="DBPath" value=".\..\client_setting\data.db" />
    复制代码
     

    是否使用绝对路径?

    UseAbsolutePath是一项重要配置,它决定整个应用程序中上涉及到的路径是相对路径还是绝对路径。

    绝对路径是指一个文件的完整路径,完整到盘符,路径不包含..\之类的。

    我是绝对路径:c:\work\plan\005ConfigTable\client_tool\TableMLGUI.exe

    我是相对路径:..\client_tool\TableMLGUI.exe

     
    有些路径我不知道填?

    客户端读表代码路径 和 客户端项目tml路径 ,这两项如果你不需要用到,那就保持默认值,不用修改

    如果你是一名策划,只需要导表,那你基本就只需要修改DBPath为客户端的路径。

     

    GUI工具使用

    主界面预览

    image

    编译全部或部分

     

  • 编译并插入到sqlite中

  • 如果你需要编译某个目录下全部的excel并把编译结果播放到sqlite中,就选择它。

    编译指定的几个excel

     

  • 如果仅仅想编译指定的几个excel,把要的excel拖到框中,选择 编译上面框中的excel

     

    其它功能

    命令行支持

    GUI同时提供命令行参数功能,目前支持单个或批量编译全部的excel,并将数据插入到sqlite中,它是一个bat,双击就OK了。

    命令行使用示例:

    编译某个目录下的所有excel:

    cd /d %~dp0
    
    start TableMLGUI.exe all

     

    辅助功能

    这里是一些辅助的功能,你可以看看。

    组- For CSharp版本使用

    根据Excel生成对应的C#代码,并拷贝到对应的目录下

    如果是把数据插入到sqlite中,这部分功能不会用到,我们目前就是。

     

    组- 检查Excel错误

    当你的表在导出出现错误,可以选择性的使用这里的一些功能对excel进行检查

     

    组- 其它

    这里是一些文件夹打开类的功能

     

    其它功能

    在编译excel后,会在应用程序目录生成一个compile_result.csv,当源始Excel文件名并不能直接用作代码文件名,或excel文件名有中文时,方便策划和程序对接时查看。

    表中记录示例:

    编译后tsv[文件名]   源始Excel文件名

    scene_config                    场景配置表.excel


本文出自赵青青,原文链接:http://www.cnblogs.com/zhaoqingqing/p/7440867.html,如需转载请自行联系原作者
相关文章
|
21天前
|
Web App开发 测试技术 API
自动化测试工具Selenium的深度解析
【5月更文挑战第27天】本文旨在深入剖析自动化测试工具Selenium,探讨其架构、原理及应用。通过对其核心组件、运行机制及在实际项目中的应用案例进行详细解读,以期为软件测试人员提供全面、深入的理解与实践指导。
|
3天前
|
Go
golang解析excel、csv编码格式
golang解析excel、csv编码格式
9 4
|
7天前
|
算法 数据挖掘 大数据
深入解析力扣171题:Excel表列序号(进制转换法详解及模拟面试问答)
深入解析力扣171题:Excel表列序号(进制转换法详解及模拟面试问答)
|
7天前
|
存储 算法 数据挖掘
深入解析力扣168题:Excel表列名称(进制转换法详解及模拟面试问答)
深入解析力扣168题:Excel表列名称(进制转换法详解及模拟面试问答)
|
30天前
|
JSON Rust 前端开发
【sheetjs】纯前端如何实现Excel导出下载和上传解析?
本文介绍了如何使用`sheetjs`的`xlsx`库在前端实现Excel的导出和上传。项目依赖包括Vite、React、SheetJS和Arco-Design。对于导出,从后端获取JSON数据,通过`json_to_sheet`、`book_new`和`writeFile`函数生成并下载Excel文件。对于上传,使用`read`函数将上传的Excel文件解析为JSON并发送至后端。完整代码示例可在GitHub仓库[fullee/sheetjs-demo](https://github.com/fullee/sheetjs-demo)中查看。
71 10
|
1月前
|
人工智能 自然语言处理 机器人
销售利器大集结:13种智能销售工具全面解析
该文探讨了人工智能在销售领域的应用,测试了13款领先工具,如Zoho CRM、Email Subject Line Generator和ChatGPT Plus等,这些工具通过数据分析、自动化任务和智能交互提升销售效率。然而,使用AI也带来人机交互和数据安全的挑战。文章强调,结合人工智能和人类销售人员的优势是关键,同时应谨慎处理相关问题。
75 4
|
1月前
项目管理工具计划模板解析:项目管理工具的双重功能与创建方法
本文介绍了项目计划模板的含义和重要性。项目计划模板是用于规划项目结构的可编辑文档,帮助团队明确任务、分配责任和管理时间。模板有助于跟踪项目进度、避免任务冲突,并简化会议安排。创建模板通常涉及选择合适的项目管理工具,如Zoho Projects或Microsoft Excel,然后分解任务、定义日期并持续调整。在Zoho Projects中,用户可以按步骤创建模板,包括命名、添加任务和设置相关细节。
25 0
|
5天前
|
安全 Java 数据安全/隐私保护
Java基础4-一文搞懂String常见面试题,从基础到实战,更有原理分析和源码解析!(二)
Java基础4-一文搞懂String常见面试题,从基础到实战,更有原理分析和源码解析!(二)
14 0
|
5天前
|
JSON 安全 Java
Java基础4-一文搞懂String常见面试题,从基础到实战,更有原理分析和源码解析!(一)
Java基础4-一文搞懂String常见面试题,从基础到实战,更有原理分析和源码解析!(一)
13 0
|
6天前
|
Java

热门文章

最新文章

推荐镜像

更多