Python—Excel转Json工具

Python工具Excel转Json

前置条件

1.安装python

下载python 我下载的是2.7;

2.配置环境变量

我的电脑右键——属性——高级系统设置——环境变量;

image-20211103163708505

添加python的安装路径:

image-20211103163757740

3.安装openpyxl库

打开cmd控制台;

win+R搜索,输入cmd进入控制台;

切换到pip路径,在python安装路径中scripts文件夹下;

image-20211103164103760

1)控制台输入 cd C:\Python27\Scripts

2)控制台输入 pip install openpyxl

image-20211103164226283

4.测试安装库是否成功

打开python.exe,输入import openpyxl;不报错代表导入成功;

image-20211103164346558

使用方式

创建txt复制以下代码,重命名后缀改为.py;

因为当做工具用就不解释了;

import openpyxl
import json
import io

# excel表格转json文件
def excel_to_json(excel_file, json_f_name):
    jd = []
    heads = []
    book = openpyxl.load_workbook(excel_file)
    sheet = book[u'Sheet1']
    
    max_row = sheet.max_row
    max_column = sheet.max_column
    # 解析表头
    for column in range(max_column):
        heads.append(sheet.cell(1, column + 1).value)
    # 遍历每一行
    for row in range(max_row):
        if row < 2:
        	# 前两行跳过
            continue
        one_line = {}
        # 遍历一行中的每一个单元格
        for column in range(max_column): 
            k = heads[column]
            v = sheet.cell(row + 1, column + 1).value
            one_line[k] = v
        jd.append(one_line)
    book.close()
    # 将json保存为文件
    save_json_file(jd, json_f_name)

# 将json保存为文件
def save_json_file(jd, json_f_name):
    f = io.open(json_f_name, 'w', encoding='utf-8')
    txt = json.dumps(jd, indent=2, ensure_ascii=False)
    f.write(txt)
    f.close()

if '__main__' == __name__:
     excel_to_json(u'test.xlsx', 'task_cfg.bytes')

image-20211103164601600

第一个为需要转json的excel文件名,第二个需要导出的二进制文件名;

excel文件要和py代码文件放在同级目录;

image-20211103165403352

右键Edit with IDLE, F5 Run执行脚本;

image-20211103165528344

右键记事本打开bytes文件;

image-20211103165731801

LitJson库

Unity中调用Json文件;

我这里使用的LitJson,一个非常简单轻量的库;https://litjson.net/

直接导入项目或者打包成dll放进项目;

使用时只需要读取Txt文本,转成string,直接调用Api即可,支持数组;

image-20210926094154640

以上是用excel转json的工具;

优化方向,批量转化文件夹中所有的excel,转化话自动存储到项目所需的目录,通过简单io操作可以完成;

posted @ 2021-11-03 17:01  小紫苏  阅读(1437)  评论(0编辑  收藏  举报