txt文本格式怎么转换成excel_文本格式转换为日期

txt文本格式怎么转换成excel_文本格式转换为日期将txt文本转换为excel格式,中间使用的列分割为tab键==一、使用xlwt模块注:Excel2003一个工作表行数限制65536,列数限制256需要模块:xlwt模块安装:xl

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

将txt文本转换为excel格式,中间使用的列分割为 tab 键

一、使用xlwt模块

注:Excel 2003 一个工作表行数限制65536,列数限制256

需要模块:xlwt

模块安装:xlwt

[root@baolin shell]#sudo pip install xlwt

脚本内容

脚本内容:

[root@baolin shell]# cat t2e.py 
#!/bin/env python
# -*- encoding: utf-8 -*-
#-------------------------------------------------------------------------------
# Purpose:     txt转换成Excel
# Created:     2017-11-03
#-------------------------------------------------------------------------------
import os
import sys
import xlwt #需要的模块

def txt2xls(filename,xlsname):  #文本转换成xls的函数,filename 表示一个要被转换的txt文本,xlsname 表示转换后的文件名
    print 'converting xls ... '
    f = open(filename)   #打开txt文本进行读取
    x = 0                #在excel开始写的位置(y)
    y = 0                #在excel开始写的位置(x)
    xls=xlwt.Workbook()
    sheet = xls.add_sheet('sheet1',cell_overwrite_ok=True) #生成excel的方法,声明excel
    while True:  #循环,读取文本里面的所有内容
        line = f.readline() #一行一行读取
        if not line:  #如果没有内容,则退出循环
            break
        for i in line.split('\t'):#读取出相应的内容写到x
            item=i.strip().decode('utf8')
            sheet.write(x,y,item)
            y += 1 #另起一列
        x += 1 #另起一行
        y = 0  #初始成第一列
    f.close()
    xls.save(xlsname+'.xls') #保存

if __name__ == "__main__":
    filename = sys.argv[1]
    xlsname  = sys.argv[2]
    txt2xls(filename,xlsname)

运行方式:

# 后缀xls会自动添加
[root@baolin shell]#python t2e.py txt文本 xls名称

二、使用xlsxwriter模块

注:当行数大于65535时,就需要使用Excel 2007 一个工作表行数限制1048576,列数限制16384

需要模块:xlsxwriter

模块安装:xlsxwriter

[root@baolin shell]#sudo pip install xlsxwriter

脚本内容

脚本内容:

#!/bin/env python
# -*- encoding: utf-8 -*-
import os
import sys
import xlsxwriter  # 当文档内容大于 65535 时使用 xlsxwriter 模块

def txt2xls(filename,xlsname):  #文本转换成xls的函数,filename 表示一个要被转换的txt文本,xlsname 表示转换后的文件名
    print('converting xls ... ')
    f = open(filename)   #打开txt文本进行读取
    x = 0                #在excel开始写的位置(y)
    y = 0                #在excel开始写的位置(x)
    xls=xlsxwriter.Workbook(xlsname+'.xlsx')                 # 创建xlsx文件

    sheet = xls.add_worksheet()     # 创建一个新的表单,默认名称为 “sheet1”,输入字符参数可指定名称

    while True:  #循环,读取文本里面的所有内容
        line = f.readline() #一行一行读取
        if not line:  #如果没有内容,则退出循环
            break
        for i in line.split('\t'):#读取出相应的内容写到x
            item=i.strip().decode('utf8')
            sheet.write(x,y,item)
            y += 1 #另起一列
        x += 1 #另起一行
        y = 0  #初始成第一列
    f.close()
    xls.close()

if __name__ == "__main__":
    filename = sys.argv[1]
    xlsname  = sys.argv[2]
    txt2xls(filename,xlsname)

运行方式:

# 后缀xls会自动添加
[root@baolin shell]#python t2e.py txt文本 xls名称

将一个目录下的所有文件都转换为excel文件

[root@baolin shell]#cat batch_to_exl.sh 
#!/bin/bash
pth="/usr/local/data_dir/data_txt/"           # 将/usr/local/data_dir/data_txt/ 目录下的所有的文件循环

mkdir /usr/local/data_dir/data_xls/ -p

for n in `ls $pth`
do
  # 执行脚本拼接的路径 执行脚本,将结果放在 其他目录(需要创建)
  python /home/baolin/shell/t2e.py ${pth}${n} /usr/local/data_dir/data_xls/${n}
done

内容参考:

http://www.cnblogs.com/zhoujinyi/archive/2013/05/07/3064785.html
http://blog.csdn.net/gumengkai/article/details/52800257
https://zhidao.baidu.com/question/565518792570332764.html
https://www.cnblogs.com/ontheway703/p/5264517.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/167260.html原文链接:https://javaforall.net

(0)
上一篇 2022年8月5日 上午10:36
下一篇 2022年8月5日 上午10:36


相关推荐

  • c++ findwindow函数_matlab中怎么查找函数的用法

    c++ findwindow函数_matlab中怎么查找函数的用法FindWindow用来根据类名和窗口名来得到窗口句柄的。但是这个函数不能查找子窗口,也不区分大小写。如果要从一个窗口的子窗口中查找需要使用FindWindowEX。 函数功能:该函数获得一个窗口的句柄,该窗口的类名和窗口名与给定的字符串相匹配。这个函数查找子窗口,从排在给定的子窗口后面的下一个子窗口开始。在查找时不区分大小写。   函数原型:HWNDFindWindowEx

    2022年8月13日
    7
  • img图片加载失败的处理

    img图片加载失败的处理img图片加载失败的措施很多产品都会要求图片加载失败会出现一个占位符这种类似的图片,强调文本强调文本加粗文本加粗文本标记文本删除文本引用文本H2Ois是液体。210运算结果是1024.插入链接与图片链接:link.图片:带尺寸的图片:居中的图片:居中并且带尺寸的图片:当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。如何插入一段漂亮的代码片去博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的代码片.//Anhighlight

    2022年5月16日
    53
  • C++中关键字volatile和mutable用法

    C++中关键字volatile和mutable用法C C 中的 volatile 关键字和 const 对应 用来修饰变量 用于告诉编译器该变量值是不稳定的 可能被更改 使用 volatile 注意事项 1 编译器会对带有 volatile 关键字的变量禁用优化 Avolatilespe

    2026年3月18日
    1
  • java敏感词过滤

    java敏感词过滤敏感词验证

    2026年3月16日
    2
  • 信息熵、信息增益、条件熵基本概念及联系「建议收藏」

    信息熵、信息增益、条件熵基本概念及联系

    2022年3月12日
    57
  • UML时序图总结

    UML时序图总结序列图主要用于展示对象之间交互的顺序。  序列图将交互关系表示为一个二维图。纵向是时间轴,时间沿竖线向下延伸。横向轴代表了在协作中各独立对象的类元角色。类元角色用生命线表示。当对象存在时,角色用一条虚线表示,当对象的过程处于激活状态时,生命线是一个双道线。  消息用从一个对象的生命线到另一个对象生命线的箭头表示。箭头以时间顺序在图中从上到下排列。   序列图中涉及的元素:  1. 生命线:

    2022年6月24日
    39

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号