# 文件操作程序:读取并本地保存文件并记录日志


背景介绍

在编程实践中,文件操作是一个基础且重要的功能。本程序实现了一个可读取并保存本地文件的程序,支持输入指定路径和文件内容,读取内容并保存至本地,同时记录操作日志。该程序适合中级程序员在1~3天内实现,适合用于数据处理、文件管理等场景。

思路分析

  1. 文件读取与保存
    使用Python的open()函数读取路径和内容,支持读取现有文件或写入新内容。使用with语句确保文件在读取和写入过程中正确关闭。
  2. 日志记录
    通过打印日志信息记录操作状态,例如当前时间戳、操作类型和文件名。日志记录可帮助调试或追踪操作过程。
  3. 输入验证
    验证路径是否存在或内容是否合法,防止输入错误,但实际实现中可忽略某些边界条件,或在代码中添加输入验证逻辑。

代码实现

# 文件操作程序:读取并保存本地文件并记录日志

import sys

def save_file_and_log(filename, content, log_message):
    """
    读取文件内容并保存至本地,记录操作日志。
    :param filename: 存储文件的路径
    :param content: 文件内容
    :param log_message: 操作日志信息
    :return: None
    """
    try:
        with open(filename, 'r', encoding='utf-8') as file:
            read_content = file.read()

        # 读取并保存内容
        file.seek(0)
        file.write(content)
        file.close()

        # 记录日志信息
        log_file_path = f"logs/log_{filename}_{log_message}.txt"
        with open(log_file_path, 'w') as log_file:
            log_file.write(log_message)

        print("文件已保存至本地路径,并记录日志信息。")

    except FileNotFoundError:
        print("文件路径不存在,请检查路径是否正确。")
    except Exception as e:
        print(f"读取和写入文件时出现错误: {e}")
    finally:
        # 如果文件未找到,不会执行后续代码
        pass

# 示例使用
if __name__ == "__main__":
    print("请输入文件路径和内容:")
    filename = input("请输入文件路径(如 /path/to/file.txt)\n")
    content = input("请输入文件内容(如 'Hello, World!')\n")
    log_message = "保存操作日志:读取文件内容"

    save_file_and_log(filename, content, log_message)

总结

本程序实现了读取、保存和记录操作日志的功能,支持输入指定的文件路径和内容,适用于数据处理、本地文件管理等场景。通过简洁的代码实现,该程序适合中级程序员在1~3天内实现,具备良好的可读性和可运行性。该实现注重基础功能的封装,同时强调了代码的规范性和可维护性。