使用了类库xlwt.
以下是代码:
# -*- coding: cp936 -*-
import xlwt;
import os, sys;
import datetime;
now = datetime.datetime.now();
#根目录
rootDir= "E:\\";
#文本文件名
txtFileName=rootDir + "data_" + now.strftime("%Y_%m") + "_stat_result.txt";
#Excel文件名
xlsFileName=rootDir + "data_" + now.strftime("%Y%m") + "_stat_result.xls";
print txtFileName;
if(os.path.isfile(txtFileName) != True):
print "txt file not exist";
sys.exit();
myfile = open(txtFileName);
str = myfile.read();
print str;
lines = str.split('\n');
wb = xlwt.Workbook();
ws = wb.add_sheet(u"mpos" + unicode(now.strftime("%Y_%m"), "ascii")+ u"统计报表");
for i in range(0, len(lines)):
#print lines[i];
fields = lines[i].split(',');
for j in range(0, len(fields)):
ws.write(i, j, unicode(fields[j],"gbk"));
myfile.close();
if os.path.isfile(xlsFileName):
os.remove(xlsFileName);
wb.save(xlsFileName);
文件中涉及到中文注释,中文字符和文件中的中文字符
代码前写:
# -*- coding: cp936 -*-
来使解析器能识别中文注释和中文字符
用 unicode(fields[j],"gbk")来转换文件中督导的中文字符
用u"统计报表"来在代码中使用中文.
这样生成的Excel文件,单元格的文件都是文本格式的.