• 文件操作


    1. 文件操作
    open 打开
    f = open(文件路径, mode="模式", encoding="编码格式") 最最底层操作的就是bytes
    打开一个文件的时候获取到的是一个文件句柄.

    绝对路径
    从磁盘根目录开始寻找
    相对路径
    相对于当前程序所在的文件夹
    ../ 上一层文件
    文件夹/ 进入xxx文件夹

    2. mode:
    r: 读取,只读.
    读取文件的相关操作
    1. read()
    默认: 读取文件内容(全部)
    read(n) 读取n个字符
    2. readline() 读取一行
    3. readlines() 读取全部. 返回列表
    (最重要)4. for line in f: 每次读取一行内容
    w:
    写入. 只写
    创建文件
    会清空文件
    a:
    也可以创建文件
    追加写
    r+: 对于文件而言. 应该有的操作就两个:读, 写
    读写操作
    w+:
    写读操作
    a+:
    追加写读

    所有带b的表示直接操作的是bytes, 当处理非文本文件的时候.
    rb
    wb

    ab: 断点续传

    r+b
    w+b
    a+b

    3. 文件操作中关于文件句柄的相关操作
    seek() 移动光标
    f.seek(0) 移动到开头(最多)
    f.seek(0, 2) 移动到末尾
    seek:两个参数
    1. 表示偏移量
    2. 从xxx开始偏移, 默认0, 开头 1, 当前位置 2, 末尾

    tell
    返回光标所在的位置

    文件复制_Bytes
    f1 = open("c:/huyifei.jpg", mode="rb")
    f2 = open("d:/huerfei.jpg", mode="wb")

    for line in f1: # line是从f1中读取的内容
    f2.write(line) # 把读取的内容原封不动的写出去

    f1.close()
    f2.flush()
    f2.close()

    需求: 把好人换成sb
    必须:
    1. 先从文件中读取内容
    2. 把要修改的内容进行修改
    3. 把修改好的内容写人一个新文件
    4. 删除掉原来的文件
    5. 把新文件重命名成原来的文件的名字
  • 相关阅读:
    strutr2运行流程
    ConcurrentHashMap原理分析
    面试题集锦
    jvm如何知道那些对象需要回收
    java中volatile关键字的含义
    关于Java类加载双亲委派机制的思考(附一道面试题)
    new关键字和newInstance()方法的区别
    Java中创建对象的5种方式 &&new关键字和newInstance()方法的区别
    字符串中第一个只出现一次的字符
    二进制数中1的个数
  • 原文地址:https://www.cnblogs.com/wangpanger/p/10073510.html
Copyright © 2020-2023  润新知