如何将Excel文件转为json格式的呢?

项目需求在tableview上展示省份和省份对应的学校信息,数据时写死在Excel里的,要转换为json才能用,github找了些脚本(xlsx2json、node-xls-json)但是弄了半天没弄出来,求助!!

Excel里的内容如下:


福建师范大学协和学院 福建
泉州轻工职业学院 福建
福建生物工程职业技术学院 福建
厦门城市职业学院 福建
福建对外经济贸易职业技术学院 福建
福建师范大学闽南科技学院 福建
福建农林大学东方学院 福建

阅读 11.4k
6 个回答

还是google比较强大,附上可用的链接地址:
https://shancarter.github.io/mr-data-converter/
这个需要翻墙才能用,不过还不错,可以在这里进行转换,复制excel里的数据粘贴上去就OK了,easy~是吧!

可以用 python xlrd 库读取 excel ,然后再以 json 的格式写入文件就好了,代码就几十行,很容易的!

哈哈,我昨天刚好遇到这个问题。不过可惜最后的解决方案没办法通用——先转成html文件然后用js直接取对应数据按照所需的json文件格式手动构造出json,打印出来后复制一下即可

你好题主 我正好写过一个这样的脚本 希望可以帮助到你 当时项目里有个提示语的excel 是产品来编辑的 我们需要转成json方便使用 我把脚本代码贴过来 你试试
代码略渣,不过能用。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import xlrd
import os
import json
#源excel文件绝对路径
PATH_TARGET_EXCEL = '/Users/bliss_ddo/Desktop/DMFans/DMFans/Resource/Config/粉丝APP提示文字.xlsx'
#目标json文件路径,可以直接配置成工程中的路径,覆盖写入
PATH_TARGET_JSONFILE = '/Users/bliss_ddo/Desktop/DMFans/DMFans/Resource/Config/json_alert_message.json'
#目标define文件路径,如果没有,脚本会自动创建
PATH_TARGET_HEADERFILE = '/Users/bliss_ddo/Desktop/test_excel2json.h'
EXCEL_DATA = xlrd.open_workbook(PATH_TARGET_EXCEL)
table = EXCEL_DATA.sheets()[0] 
COUNT_ROW = table.nrows
COUNT_COL = table.ncols

#读取excel写入json文件
arr_big = []
for i in range(1,COUNT_ROW):
    dict_key_value = {}
    for j in range(0,COUNT_COL):
        each_key   = table.cell(0,j).value
        each_value = table.cell(i,j).value 
        dict_key_value[each_key.encode('utf-8')]=each_value.encode('utf-8')
    arr_big.append(dict_key_value)
json_string = json.dumps(arr_big,ensure_ascii=False)
file_pra_txt = open(PATH_TARGET_JSONFILE,'w')
file_pra_txt.write(json_string)
file_pra_txt.close()
print '生成json文件成功!' 


#读取excel写入define文件
finalString = ''
for i in range(1,COUNT_ROW):
     each_string = table.cell(i,0).value
     each_comment =table.cell(i,1).value
     finalString += '#define '+each_string+' @"'+each_string+ '"//'+each_comment+'\n'
file_header = open(PATH_TARGET_HEADERFILE,'w+')
file_header.write(finalString.encode('utf-8'))
file_header.close()

print '生成define文件成功!'```
新手上路,请多包涵

arrrow=value转成这样的数组,再转成json

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题