将一个文件夹内所有txt文件合并成一个txt文件。
合并后的txt文件按章节对应原来每个txt文件,一个输入文件是一章,章节名字就是原txt文件文件名
报错
Traceback (most recent call last):
File "C:/Users/hjasee/PycharmProjects/untitled/fi.py", line 3, in <module>
files = os.listdir(dirPath)
OSError: [WinError 123] 文件名、目录名或卷标语法不正确。: 'E:\\pd\t'
方法是拷别人的,不会改
import os
dirPath = "E:\pd\t" # 所有txt位于的文件夹路径
files = os.listdir(dirPath)
res = ""
i = 0
for file in files:
if file.endswith(".txt"):
i += 1
title = "第%s章 %s" % (i, file[0:len(file) - 4])
with open("dirpath/" + file, "r", encoding='utf-8') as file:
content = file.read()
file.close()
append = "\n%s\n\n%s" % (title, content)
res += append
with open("dirpath/outfile.txt", "w", encoding='utf-8') as outFile:
outFile.write(res)
outFile.close()
print(len(res))
看了你的需求,代码修改如下,看看行不行。需要自己修改一下文件路径dirPath,不要忘记写最后的反斜杠。望采纳
import os
dirPath = "E:/pd/txtfiles/" # 所有txt位于的文件夹路径
files = os.listdir(dirPath)
res = ""
i = 0
for file in files:
if file.endswith(".txt"):
i += 1
title = "第%s章 %s" % (i, file[0:len(file) - 4])
with open(dirPath + file, "r", encoding='utf-8') as f:
content = f.read()
now_content = "\n%s\n\n%s" % (title, content)
res += now_content
with open(dirPath + "outfile.txt", "w", encoding='utf-8') as outFile:
outFile.write(res)
换脸