zoukankan      html  css  js  c++  java
  • 文件的修改

    # with open('a.txt',mode='r+t',encoding='utf-8') as f:
    #     print(f.writable())
        # f.seek(7,0)
        # f.write('SB')

    # with open('a.txt',mode='r+t',encoding='utf-8') as f:
    #     f.seek(3,0)
    #     f.write('h')

    # 由上例得出结论:硬盘都是用新内容覆盖旧内容,没有修改的概念,但是内存是可以修改的
    # 如何修改文件:
    # 思路:把硬盘的内容先读入内存,然后在内存中修改完毕后,再覆盖会硬盘
    # 方式一:
    # 步骤:
    # 1、先将硬盘中文件的内容全部读入内存,然后在内存中修改完毕得到一个修改好的结果
    # 2、将修改的结果覆盖回原文件
    # 优点: 不耗费硬盘
    # 缺点:耗费内存
    # with open('a.txt',mode='rt',encoding='utf-8') as f1:
    #     data=f1.read()
    #     res=data.replace('lxx','SB')
    #
    # with open('a.txt',mode='wt',encoding='utf-8') as f2:
    #     f2.write(res)
     
     
    # 方式二:
    # 步骤:
    #1、循环读取源文件内容,一行行修改一行行写入一个新的临时文件
    #2、删除源文件
    #3、将临时文件重命名为源文件名
    # 优点:节省内存
    # 缺点:耗费硬盘空间
    # import os
    # with open('a.txt',mode='rt',encoding='utf-8') as f1,
    #         open('.a.txt.swp',mode='wt',encoding='utf-8') as f2:
    #     for line in f1:
    #         res=line.replace('SB','lxx')
    #         f2.write(res)
    #
    # os.remove('a.txt')
    # os.rename('.a.txt.swp','a.txt')
    每天逼着自己写点东西,终有一天会为自己的变化感动的。这是一个潜移默化的过程,每天坚持编编故事,自己不知不觉就会拥有故事人物的特质的。 Explicit is better than implicit.(清楚优于含糊)
  • 相关阅读:
    java设计模式0--设计模式简介
    Eclipse常用快捷键与代码模板
    hadoop文件系统与I/O流
    java学习笔记16--I/O流和文件
    hadoop压缩框架
    hadoop中典型Writable类详解
    java学习笔记15--多线程编程基础2
    redis配置密码的方法
    编写的windows程序,崩溃时产生crash dump文件的办法
    windows程序崩溃生成dump文件
  • 原文地址:https://www.cnblogs.com/kylin5201314/p/13542229.html
Copyright © 2011-2022 走看看