美文网首页
文件处理

文件处理

作者: 皮卡丘灵灵 | 来源:发表于2017-07-06 21:19 被阅读0次

此文仅做学习用

打开文件

读取文件

read([size]):如果文件长度超过size,那么只读取size长度的部分

readlines([size])是读取完缓冲buffer的所有字节

注意一个缓存:

 io.DEFAULT_BUFFER_SIZE

8192

还有一种方法是使用迭代器:

他的截图是:

那么迭代器有什么好处呢?

首先是把文件传给迭代器,不是把文件导到内存中,而是没有用lens读取一行的时候他自动读取一行。所以使用迭代器可以在不消耗内存的同时遍历整个文件。后面就会知道把文件放在缓存中读取与放入迭代器读取的区别。

写入文件

对象可以是字符串,字符串组成的元组,字符串所组成的列表

注意参数必须是字符串组成的序列!

还有要注意,写入的时候,Linux本身有个写缓存的机制,如果不主动调用close()或者flush函数,他是不会写到磁盘文件上的。关闭的时候才会系统调用,才会写进去磁盘里


注意第2点,同步到磁盘后,再写入的如果还没到写缓存的容量,那么内容还是会留在写缓存中。

注意,文件的字节数在调用了close()函数后变大了,因为写缓存里的内容都传到了磁盘中。

EOL出现的原因是引号没有成对出现,f.然后点tab会出现这个对象可以使用的方法

注意啊,w只允许写入,r只允许读,那么以这些方式打开的话,你就不能读/写!

w+,打开一个文件先写后读。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

r+,可读写文件。【可读;可写;可追加】

注意若以追加方式打开文件,就会在文件结尾追加新的内容

a,打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

注意若以追加方式打开文件,就会在文件结尾追加新的内容

a,打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

要注意close之后就读不了了。

那为什么需要二进制的方式呢,因为像读取图片这类信息,普通打开是打开文本,读不了信息,二进制打开就能读取图片的长宽。

文件关闭

然后他做了一个实验,证明了打开超过1024就会报错,所以打开了文件记得关闭。

python的问题:

然后把指针指回去

那么如何使指针指到结尾呢

如何使指针相对于当前位置移动呢

错误情况(指针越界):

文件属性:

例子:

f.encoding回车后没有值,证明是ASCLL码编码

查看文件所有的属性:

相关文章

  • Python 文件处理

    Python 读文件处理 1. readline() with 处理开闭文件&文件异常处理 readline()内...

  • java之bat处理文件(mac版)

    一、为何需要批量处理文件 bat处理文件: bat处理文件就是可以一次性执行多个命令的文件。 为什么要学bat处理...

  • 处理文件

    touch test_one —— 新建文件 cp source destination —— 复制文件 当so...

  • 文件处理

    此文仅做学习用 打开文件 读取文件 read([size]):如果文件长度超过size,那么只读取size长度的部...

  • 文件处理

    import android.app.*; import android.content.*; import an...

  • 文件处理

    1.删除文件

  • 文件处理

    1、读写方式打开,文件不存在文件会报IOerro,文件存在会打开文件(不会先清空文件已有内容)。指针在文件开头,会...

  • 文件处理

    文件的内建函数: 内建函数方法: open()打开文件 read()读取输入 readline(...

  • 处理文件

    1.搭建服务器 下载express-static专门用来处理静态文件const express = requir...

  • 文件处理

    20211124(静心而论1039): 文件处理 我们办公室在今年的9月15日下发了一份...

网友评论

      本文标题:文件处理

      本文链接:https://www.haomeiwen.com/subject/dlyhhxtx.html