linux中c语言xlsx转换成csv,xlsx转换成csv格式

#!/usr/bin/python

# -*- coding:utf-8 -*-

#python 2.7

from openpyxl import load_workbook

import csv

import os,sys

reload(sys)

sys.setdefaultencoding('utf8')

def xlsx2csv(filename):

try:

xlsx_file_reader = load_workbook(filename=filename)

for sheet in xlsx_file_reader.get_sheet_names():

# 每个sheet输出到一个csv文件中,文件名用xlsx文件名和sheet名用'_'连接

csv_filename = '{xlsx}_{sheet}.csv'.format(

xlsx=os.path.splitext(filename.replace(' ', '_'))[0],

sheet=sheet.replace(' ', '_'))

#生成文件将xlsx文件内容写入到csv中

csv_file = file(csv_filename, 'wb')

csv_file_writer = csv.writer(csv_file)

sheet_ranges = xlsx_file_reader[sheet]

for row in sheet_ranges.rows:

row_container = []

for cell in row:

if type(cell.value) == unicode:

row_container.append(cell.value.encode('utf-8'))

else:

row_container.append(str(cell.value))

csv_file_writer.writerow(row_container)

csv_file.close()

except Exception as e:

print e

if __name__ == '__main__':

#如脚本后没有跟xlsx的文件名将不会执行

if len(sys.argv) != 2:

print 'usage: xlsx2csv '

else:

xlsx2csv(sys.argv[1])

sys.exit(0)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值