最近在项目上需要批量把txt文件转成成csv文件格式,以前是手动打开excel文件,然后导入txt来生产csv文件,由于这已经变成每周需要做的事情,决定用python自动化脚本来实现,
思路:
- 读取文件夹中所有txt文件,保存到list中
- 针对每个txt文件,自动生产同文件名的csv文件
- 对每个txt文件,根据分隔符来保存为csv文件,分隔符为分号“;”,在转换之前先把文件编码统一成’utf-8’,因为在实现过程中,发现总会有编码报错问题出现
- 新建txt文件夹来存放所有txt文件
完整代码如下:
-------欢迎加入python新手交流群851211580-------
import csv
import os
import shutil
from chardet.universaldetector import UniversalDetector
def get_encode_info(file):
with open(file, 'rb') as f:
detector = UniversalDetector()
for line in f.readlines():
detector.feed(line)
if detector.done:
break
detector.close()
return detector.result[