转化Csv,excel到语言相关的文件

介绍了一个开源工具const-data,该工具可以将CSV或Excel文件转换为简单的指定语言的数据格式,并生成特定语言的读取代码。支持的数据类型包括整型、浮点型、字符串、JSON等。
部署运行你感兴趣的模型镜像


代码地址:https://github.com/neoliang/const-data


const-data

const-data is a free, open source tool, the target of this tool are:

1.convert csv or excel to simple language specified data format.

2.generate language speicfied reading codes

csv or excel format

  1. the first three rows are fixed
  2. the first rows describes data which will be ignored in converting
  3. the second row describes data name in this column
  4. the third row describes data type in this column: validate types are:

    a. int

    b. float

    c. string

    d. json

    e. comment: the comment type of column will be ignored in converting

    f. empty: the type of column of empty type will be int

  5. examples:

    id触发类型触发id奖励备注其它
    idtrigger_typetrigger_idrewardcommentextra
     stringintjsoncommentfloat
    1piece26{"yellow":2}泥土消除奖励0
    2piece27{"diamond:1}钻石消除奖励10.5

    a. the type of id-column is int because it's empty

converting csv file to lua file

#convert one csv file
#in root dir 
cd convert
python ./convert.py -file ../testdata/reward.csv -out_dir ../testdata -if csv -of lua

#convert csv files in dir
python ./convert.py -dir ../testdata -out_dir ../testdata -if csv -of lua

converting csv file to json file

#convert one csv file
#in root dir 
cd convert
python ./convert.py -file ../testdata/reward.csv -out_dir ../testdata -if csv -of json

#convert csv files in dir
python ./convert.py -dir ../testdata -out_dir ../testdata -if csv -of json

converting excel to other files

1.the command line is almost same as convert csv excpe the option -if is excel

2.you must install xlrd using pip as following:

pip install xlrd

command line usage:

  usage: python ./convert.py -if input_format -of output_format -file input_file -out_dir lua_dir
  python ./convert_csv_to_lua.py -if input_format -of output_format -dir csv_dir -out_dir lua_dir

  options:  
    -if:    input file format : csv or excel
    -of:    output file format lua,json
    -dir:     convert files in dir
    -file:    convert file
    -out_dir: the dir of output files
    -h print: this message  


您可能感兴趣的与本文相关的镜像

Seed-Coder-8B-Base

Seed-Coder-8B-Base

文本生成
Seed-Coder

Seed-Coder是一个功能强大、透明、参数高效的 8B 级开源代码模型系列,包括基础变体、指导变体和推理变体,由字节团队开源

下载前可以先看下教程 https://pan.quark.cn/s/16a53f4bd595 小天才电话手表刷机教程 — 基础篇 我们将为您简单的介绍小天才电话手表新机型的简单刷机以及玩法,如adb工具的使用,magisk的刷入等等。 我们会确保您看完此教程后能够对Android系统有一个最基本的认识,以及能够成功通过magisk root您的手表,并安装您需要的第三方软件。 ADB Android Debug Bridge,简称,在android developer的adb文档中是这么描述它的: 是一种多功能命令行工具,可让您与设备进行通信。 该命令有助于各种设备操作,例如安装和调试应用程序。 提供对 Unix shell 的访问,您可以使用它在设备上运行各种命令。 它是一个客户端-服务器程序。 这听起来有些难以理解,因为您也没有必要去理解它,如果您对本文中的任何关键名词产生疑惑或兴趣,您都可以在搜索引擎中去搜索它,当然,我们会对其进行简单的解释:是一款在命令行中运行的,用于对Android设备进行调试的工具,并拥有比一般用户以及程序更高的权限,所以,我们可以使用它对Android设备进行最基本的调试操作。 而在小天才电话手表上启用它,您只需要这么做: - 打开拨号盘; - 输入; - 点按打开adb调试选项。 其次是电脑上的Android SDK Platform-Tools的安装,此工具是 Android SDK 的组件。 它包括与 Android 平台交互的工具,主要由和构成,如果您接触过Android开发,必然会使用到它,因为它包含在Android Studio等IDE中,当然,您可以独立下载,在下方选择对应的版本即可: - Download SDK Platform...
### 使用C#将Excel文件换为CSV文件的解决方案 在C#中,可以使用多种方法将Excel文件换为CSV文件。以下提供一种基于`Microsoft.Office.Interop.Excel`库的解决方案,该库允许通过自动化Excel应用程序来读取和写入文件。 #### 方法描述 通过`Microsoft.Office.Interop.Excel`库,可以打开Excel文件并逐行读取数据,然后将其写入CSV文件。以下是具体实现代码: ```csharp using System; using System.IO; using Microsoft.Office.Interop.Excel; class Program { static void Main(string[] args) { string excelFilePath = @"C:\path\to\your\excelFile.xlsx"; string csvFilePath = @"C:\path\to\your\output.csv"; Application excelApp = new Application(); Workbook workbook = excelApp.Workbooks.Open(excelFilePath); Worksheet worksheet = (Worksheet)workbook.Sheets[1]; Range range = worksheet.UsedRange; int rowCount = range.Rows.Count; int colCount = range.Columns.Count; using (StreamWriter sw = new StreamWriter(csvFilePath, false, System.Text.Encoding.UTF8)) { for (int row = 1; row <= rowCount; row++) { string line = ""; for (int col = 1; col <= colCount; col++) { line += ((range.Cells[row, col] as Range).Value2?.ToString() ?? "") + ","; } // 去掉最后一个逗号 if (!string.IsNullOrEmpty(line)) { line = line.Substring(0, line.Length - 1); } sw.WriteLine(line); } } workbook.Close(false); excelApp.Quit(); Console.WriteLine("Conversion completed."); } } ``` #### 注意事项 - 确保安装了Microsoft Excel,并且项目引用了`Microsoft.Office.Interop.Excel`库[^5]。 - 如果需要处理xlsb文件,可能需要额外的库支持,例如`EPPlus`或`ClosedXML`[^6]。 - 上述代码示例假设Excel文件只有一个工作表。如果有多个工作表,需要对`workbook.Sheets`进行遍历[^7]。 #### 替代方案 除了使用`Microsoft.Office.Interop.Excel`外,还可以考虑使用第三方库如`EPPlus`或`ClosedXML`,这些库不依赖于本地安装的Excel软件,适合在服务器环境中运行[^8]。 ```csharp using OfficeOpenXml; using System.IO; class Program { static void Main(string[] args) { string excelFilePath = @"C:\path\to\your\excelFile.xlsx"; string csvFilePath = @"C:\path\to\your\output.csv"; FileInfo fileInfo = new FileInfo(excelFilePath); using (ExcelPackage package = new ExcelPackage(fileInfo)) { ExcelWorksheet worksheet = package.Workbook.Worksheets[0]; int rowCount = worksheet.Dimension.Rows; int colCount = worksheet.Dimension.Columns; using (StreamWriter sw = new StreamWriter(csvFilePath, false, System.Text.Encoding.UTF8)) { for (int row = 1; row <= rowCount; row++) { string line = ""; for (int col = 1; col <= colCount; col++) { line += worksheet.Cells[row, col].Text + ","; } if (!string.IsNullOrEmpty(line)) { line = line.Substring(0, line.Length - 1); } sw.WriteLine(line); } } } Console.WriteLine("Conversion completed."); } } ``` 此代码使用`EPPlus`库,无需依赖Microsoft Excel软件即可完成换[^9]。 ### 总结 上述两种方法分别适用于不同的场景。如果环境中已经安装了Microsoft Excel,则可以选择`Microsoft.Office.Interop.Excel`;如果需要更轻量级的解决方案,或者在无GUI的服务器环境中运行,则推荐使用`EPPlus`或`ClosedXML`[^10]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值