编写一个程序达成合并同一文件夹中所有txt文件内容的功能。(先读取文件夹中的所有txt文件,再将txt文件逐个打开,读取里面的内容。将这些读取到的内容写入一个字符串,最终将字符串写入一个新的txt文件中。)
时间: 2024-02-27 08:57:02 浏览: 16
好的,以下是Python 代码实现:
```python
import os
folder_path = "路径/文件夹名" # 文件夹路径
output_file = "路径/合并后的文件.txt" # 合并后的文件路径
# 获取文件夹中所有txt文件路径
file_paths = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if f.endswith(".txt")]
# 合并文件内容
content = ""
for file_path in file_paths:
with open(file_path, "r") as f:
content += f.read()
# 将合并后的内容写入新的文件中
with open(output_file, "w") as f:
f.write(content)
print("合并完成!")
```
需要替换掉代码中的文件夹路径和合并后的文件路径,然后直接运行即可。
相关问题
python将同一文件夹下的所有文本文件(.txt文件)合并为一个txt。
要将同一文件夹下的所有文本文件合并为一个txt文件,可以使用Python的os和shutil库来实现。
首先,需要导入os和shutil库:
import os
import shutil
然后,定义一个函数来合并文件:
def combine_txt_files(folder_path, output_file):
#获取文件夹内所有文件的列表
file_list = os.listdir(folder_path)
#创建一个新的空文件
with open(output_file, 'w') as output:
#循环遍历文件夹中的每个文件
for file in file_list:
#判断文件是否为txt文件
if file.endswith('.txt'):
#获取txt文件的完整路径
file_path = os.path.join(folder_path, file)
#读取txt文件内容
with open(file_path, 'r') as input:
#将txt文件内容写入新文件中
output.write(input.read())
print('所有txt文件已成功合并为一个文件。')
最后,调用这个函数并传入文件夹路径和输出文件的路径:
combine_txt_files('文件夹路径', '输出文件路径.txt')
这样就可以将同一文件夹下的所有文本文件合并为一个txt文件了。
python 将文件夹下所有的doc或者docx文件合并到一个txt文件中
你可以使用Python的`os`和`docx`库来实现将文件夹下所有的`.doc`或`.docx`文件合并到一个`.txt`文件中。以下是一个实现的示例代码:
```python
import os
from docx import Document
# 指定文件夹路径和目标txt文件路径
folder_path = 'path/to/folder'
output_file = 'path/to/output.txt'
# 获取文件夹中所有的doc和docx文件
files = [f for f in os.listdir(folder_path) if f.endswith(('.doc', '.docx'))]
# 创建一个空的txt文件
with open(output_file, 'w', encoding='utf-8') as output:
# 遍历所有文件
for file in files:
file_path = os.path.join(folder_path, file)
# 使用docx库读取doc或docx文件内容
doc = Document(file_path)
paragraphs = [p.text for p in doc.paragraphs]
# 将内容写入txt文件
output.write('\n'.join(paragraphs))
output.write('\n') # 每个文件后添加一个换行符
```
你需要将`folder_path`替换为你要操作的文件夹路径,将`output_file`替换为你要输出的txt文件路径。在运行代码之前,确保已安装`docx`库(使用`pip install python-docx`安装)。
运行代码后,它将遍历指定文件夹中的所有`.doc`和`.docx`文件,将它们的内容逐行写入指定的txt文件中,每个文件之间用一个换行符分隔。