背景介绍
本项目旨在实现文件读取、写入和日志记录功能,要求程序能够读取本地目录中的文件,保存到另一个文件夹,并记录相关操作日志。该功能要求使用标准库函数处理文件操作,确保代码简洁易懂,适合中级程序员在短时间内完成。
思路分析
- 文件读取与写入
- 使用
os模块处理文件路径,确保目录路径创建正确。 - 通过
os.path模块处理文件路径的相对性,避免硬编码路径。 - 在文件写入时,使用标准文件写入函数,并记录操作日志。
- 使用
- 日志记录逻辑
- 使用
logging模块记录日志文件,确保日志记录的格式化和安全性。 - 生成日志文件名时,结合当前时间戳,确保日志记录的完整性。
- 使用
代码实现
import os
import logging
def save_file_to_logs(input_file_path, log_folder="logs"):
"""
读取本地目录中的文件,保存到另一个文件夹,并记录操作日志。
参数:
input_file_path (str): 要保存的文件路径
log_folder (str): 日志记录的存放目录(默认为logs)
"""
# 创建目标目录
os.makedirs(log_folder, exist_ok=True)
# 读取输入文件路径
log_file_path = os.path.join(log_folder, "operation_log.txt")
# 保存内容到日志文件
with open(log_file_path, 'w') as log_file:
log_file.write(f"Processing file: {input_file_path}")
print(f"文件已保存至: {log_folder}/{input_file_path}")
输出示例
输入:`file.txt`(路径)
输出:
保存到: logs/operation_log.txt
操作日志记录:处理文件: file.txt
总结
本代码实现了文件读取、写入和日志记录功能,利用了标准库函数处理文件路径和日志记录逻辑。通过确保目录路径创建正确和日志文件名格式化,提升了程序的健壮性和可维护性。对于中级程序员来说,这一实现过程需要的时间较短,适合在1~3天内完成。