• 文本文件的合并操作方法


    我们有时候,看到几k的日志文件,一大堆,一个一个打开又很麻烦,少看几个,又担心遗漏,这个时候,如果有一个可以合并所有文本文件的工具就好了。

    下面这个代码就可以实现,它不局限于.txt格式,基本上字符型的文本文档,包括.py格式,.c格式都可以,生成的文件与原来的文件在同一个文件夹下,’joined xxxx-xx-xx.(扩展名)’就是最终的名字。

    上代码:

    import os
    import datetime
    
    # 新的文件名中以日期结尾,以下获取系统日期
    date = str(datetime.datetime.today())[0:10]
    
    file_lists = []
    
    
    def text_file_merger(directory_path):
        entry_lists = os.scandir(directory_path)
        for entry_list in entry_lists:
            if entry_list.is_file():
                file_lists.append(entry_list.path)
    
        for file in file_lists:
            file_type_extension = os.path.splitext(file)[1]  # 获取文件的扩展名,基本上.txt, .py之类的文本文档合并没有问题
            joined_file_name = 'joined {}{}'.format(date, file_type_extension)
            with open(file, 'rb') as file_to_read:
                file_contents = file_to_read.read()
                with open(directory_path + os.sep + joined_file_name, 'ab+') as file_to_write:
                    file_to_write.write(file_contents + b'
    ' * 3)  # 让每个文件的内容之间相隔3行
    
    
    directory_path = r"D:日志文件"
    
    text_file_merger(directory_path)

    输出:

    因为以二进制方式读取,所以不管中文还是英文,都无缝支持。

  • 相关阅读:
    线程
    简单排序
    SSM的整合
    SpringMVC中的拦截器、异常处理器
    SpringMVC的文件上传
    SpringMVC的数据响应和结果视图
    springMVC的常用注解
    SpringMVC入门
    Spring中声明式事务控制
    JdbcTemplate在spring中的使用
  • 原文地址:https://www.cnblogs.com/johnthegreat/p/12588982.html
Copyright © 2020-2023  润新知