Day19-文件的操作

1 文件操作的三个步骤

  打开文件 open()

  操作文件 read()或者write()

  关闭文件 close()

2 打开文件

  open()函数默认的是 读 模式, 默认的编码是 系统当前的编码 .

f = open("test")
data = f.read()
print(data)

Traceback (most recent call last):
  File "F:/python自主学习/PyCharm/Day19/文件操作.py", line 8, in <module>
    data = f.read()
UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x85 in position 14: illegal multibyte sequence

   open()操作可能会引发异常, 诸如 IOerror

  open()函数会返回的内容叫文件句柄, 是一个可迭代对象

f = open("test",encoding="utf8")
for line in f:
    print(line.strip())

3 模式介绍

  三个基本模式r w a

    r读模式

      这个模式只能读, 打开后光标位置在0处

    w写模式

      这个模式只能写, 不能读, 打开后的光标在0处

      该模式打开之后, 会直接将源文件清空, 也正是因为这个原因光标才在0处

    a追加模式

      这个模式只能写, 不能读, 打开后的光标文件末尾

      写入的时候, 不会因为光标的位置在哪而写入哪儿, 而是始终在文件末追加

  可读可写的+模式

    r+模式

      可读可写, 最老实的模式, 光标刚打开的时候是在0位置

      读完之后光标会随着读的位置变化而变化

      写入的时候不会清空原有内容, 只会单纯的在光标位置处写入内容, (因而在光标0处写入一个字符只会改变光标0处的内容)

    w+模式

      可读可写, 保留w的特性, 上来就清空源文件

    a+模式

      可读可写, 保留a的特性, 写入不根据光标位置  

4 文件的读操作

  read()方法

    读取整个文件

    读取单位是字符

    可以传入int参数, 用于获取光标到目标位置字符的内容, 最开始打开文件的时候光标在文件开始位置

f = open("test", encoding="utf-8")
data = f.read(5)
print(data)
f.close()

  readline()

    读取一行

    光标到下一行行首

  readlines()

    返回一个可迭代对象, 每一个元素是一行内容

    用作遍历的时候效果相同的还有文件句柄, 但是最好使用文件句柄, 这样更省内存(文件句柄是用一行拿一行)

f = open("test",encoding="utf8")
for line in f:
    print(line)

  readable()

    查看文件是否可读, 返回的是布尔类型

5 文件的写操作

  write()

    将需要写入的内容写入到文件中

  writelines()

    与write()方法的区别就在于, 传入的参数是一个列表, 该方法不自动增加换行, 需要手动添加换行符号

  writeable()

    查看文件是否可读

6 光标的操作

  seek()

    传入int参数可以设置光标的位置, 该位置从0开始, 是以字节的方式排序得到的顺序

  tell()

    查看当前光标的位置

    其中换行占2个位置

7 with语句

  with语句自带使用close()方法, 这也是为了防止打开文件忘记关闭

with open("test",encoding="utf8") as f_read, open("test2","w", encoding="utf8") as f_write:
    for line in f_read:
        f_write.write(line)

8 flush方法

  在文件的操作过程中, 对文件的操作不会立马写入磁盘保存, 一般情况下是在调用close()的时候写入磁盘保存

  如果需要立马写入磁盘保存, 就可以使用flush()方法来实现

时间: 2024-07-29 04:07:03

Day19-文件的操作的相关文章

Python中文件的操作

文件的操作介绍 文件打开的方法 主要有两种: no with 格式:open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) 常用:variable = open('路径\文件',mode,encoding=None) variable.close() #不使用with方法时,在文件操作结束时要关闭文件 with 格式:with open('路径\

C语言文件读写操作总结

C语言文件操作 一.标准文件的读写 1.文件的打开 fopen() 文件的打开操作表示将给用户指定的文件在内存分配一个FILE结构区,并将该结构的指针返回给用户程序,以后用户程序就可用此FILE指针来实现对指定文件的存取操作了.当使用打开函数时,必须给出文件名.文件操作方式(读.写或读写),如果该文件名不存在,就意味着建立(只对写文件而言,对读文件则出错),并将文件指针指向文件开头.若已有一个同名文件存在,则删除该文件,若无同名文件,则建立该文件,并将文件指针指向文件开头. fopen(char

.net对文件的操作之对文件目录的操作

.NET 提供一个静态File类用于文件的操作,下面列出它的主要操作方法. 返回值类型 方法名称 说明 bool Exists(string path) 用于检查指定文件是否存在 void Copy(string sourceFilePath,string destinationFilePath) 将指定路径的源文件中的内容复制到目标文件中,如果目标文件不存在,则在指定的路径中新建一个文件 void Move(string sourceFileName,string destFileName)

【UNIX环境高级编程】文件 IO 操作 - 基础函数 open close creat lseek write read 详解

博客地址 : http://blog.csdn.net/shulianghan/article/details/46980271 一. 文件打开关闭操作相关函数介绍 1. open 函数 (1) open 函数简介 open 函数解析 : -- 函数定义 : #include <fcntl.h> int open(const char *path, int oflag, ...); -- 函数作用 : 打开或者创建一个文件; -- 返回值 : 打开文件成功, 返回文件描述符; 如果失败, 返回

Linux命令行基本文件/文件夹操作

对文件的操作 创建空文件:   touch +文件名   # 一般是先touch好一个文件然后vim这个文件. 很好奇为什么叫touch.删除文件:  rm +文件名         # 直接就没了,不会到回收站 复制文件到指定位置: cp +文件 + 目标目录  # 例如 cp file sub 把当前目录下的file文件复制到了当前目录子目录sub里面.重命名/移动文件: mv +文件(文件夹) + 目标目录 # 例如 mv dir1 dir2/new 把文件夹dir1(及其内容)移动到了跟

Java 对文件的操作

public class ReadFile { /** * 按行读取文件操作 * @throws IOException */ public void readFile(String fileName) throws IOException{ //(1)File 类 File file = new File(fileName); // BufferedReader reader = null; try { //(2) 将文件放入到BufferedReader中 reader = new Buff

java实现客户端向服务器发送文件的操作

服务器源代码: import java.io.BufferedReader; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.net.ServerSocket;

我的视频网站开通,第一个 ArcGIS文本文件,excel文件生成点操作发布,希望大家支持

网站地址:http://i.youku.com/gisoracle第一个学习视屏:ArcGIS文本文件,excel文件生成点操作http://v.youku.com/v_show/id_XNzM3NzIxODE2.html 我的视频网站开通,第一个 ArcGIS文本文件,excel文件生成点操作发布,希望大家支持,布布扣,bubuko.com

对文件的操作

以下是最近文件操作的总结,所以我把所有零碎的知识点写在了一起,比较乱! 对文件的操作,布布扣,bubuko.com

INI文件的操作(ASP.NET+C#)

INI文件的操作(ASP.NET+C#) (一)INIFile.cs using System; using System.Runtime.InteropServices; using System.Text; namespace CreateWebDir { /// <summary> /// INIFile 的摘要说明. /// </summary> public class INIFile { public string path; public INIFile(string