下载
Github: https://github.com/ihaiucom/ihaiu.ExportXlsx
安装net core
如果安装过net core, 可以跳过该步骤
下载地址:https://www.microsoft.com/net/download/windows
根据自己电脑情况选择对应版本即可, 我这里安装的这个: https://www.microsoft.com/net/download/thank-you/dotnet-sdk-2.1.300-windows-x64-installer
测试Demo
双击: ExportXlsxTool/Tools/生成配置--客户端.bat
可以看到生成了目录
2个工具
在Tools目录下可以看到两个文件夹
ExportXlsx: 负责导出xlsx配置,生成csv、json和数据结构。客户端会生成csv解析器 Copy: 负责将生成的文件拷贝到项目目录
ExportXlsx.bat
dotnet ./ExportXlsx/ExportXlsx.dll --optionSetting=./ExportXlsxSetting.json
可以看出他需要指定一个启动配置文件ExportXlsxSetting.json, 该文件配置了(xlsx文件目录, 生成输出目录)等,后面我们会详细介绍
CopyClient.bat
dotnet ./Copy/Copy.dll --setting=./CopyClientSetting.json
可以看出他需要指定一个启动配置文件CopyClientSetting.json, 该文件配置了要拷贝的文件,后面我们会详细介绍
生成配置--客户端.bat
dotnet ./ExportXlsx/ExportXlsx.dll --optionSetting=./ExportXlsxSetting.json dotnet ./Copy/Copy.dll --setting=./CopyClientSetting.json
是将ExportXlsx.bat和CopyClient.bat合并, 变成一键生成
ExportXlsxSetting.json 介绍
字段名 | 介绍 | 默认值 |
autoEnd | 运行完,是否自动关闭cmd | true |
optionSetting | 启动参数设置 配置路径 | ./optionSetting.json |
xlsxDir | xlsx目录(可以用分号’;’分割填写多个路径) | ../Config |
outDir | 配置输出目录 | ../ConfigOut |
exportSettingXlsx | xlsx配置文件 (可以配置扩展数据结构和设置忽略文件) | ../Config/ExportSetting.xlsx |
settingStructSheet | ExportSetting.xlsx “数据结构”标签 | StructSheet |
settingStructSheet | ExportSetting.xlsx “忽略列Excel文件”标签 | IgnoreSheet |
templateDir | 生成代码模板 | ./Template |
csvSeparator | csv分隔符 | \t |
csvSeparatorReplace | xlsx文件内容如果有用到csv分隔符时,用该配置替换 | |
csvLineSeparatorReplace | xlsx文件内容如果有用到换行符时,用该配置替换 | |
xlsxHeadTypeLine | 表头–Type 所在行 | 1 |
xlsxHeadCnLine | 表头–中文 所在行 | 2 |
xlsxHeadFieldLine | 表头–字段 所在行 | 3 |
CopyClientSetting.json 介绍
enableoverwrites: 可覆盖文件 disableoverwrites: 如果目标文件已存在,将忽略
// 支持文件和目录 src: 源路径 dst: 目标路径
xlsx文件表头
表头有3行,他们是必须的:
type | 类型 |
cn | 中文 |
field | 字段行 |
如果要修改行的顺序, 可以修改ExportXlsxSetting.json
xlsx表头 类型
默认支持的类型有:
string |
int |
int64 |
float |
double |
boolean |
默认支持的数组类型有:
string[] |
int[] |
int64[] |
float[] |
double[] |
boolean[] |
可以看出只要有支持的类型就可以加中括号[]表示数组
扩展 自定义数据结构类型
到 ../Config/ExportSetting.xlsx 文件下添加自己的数据结构
注意: 自定义的数据结构一定要以DT开头
使用就和其他的一样
数据里的分割符
一级分隔符 | ; |
二级分隔符 | : |
配置忽略文件
到 ../Config/ExportSetting.xlsx IgnoreSheet标签