day08读取文件
可参考;https://www.cnblogs.com/gengcx/p/6713646.html
主要内容:
1.只读
2.只写
3.追加
4.r+读写
5.w+写读
6.a+写读
7.其他
一、使用python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取文件句柄。
打开文件的方式:r,w,a,r+,w+,a+,rb,wb,ab,r+b,w+b,a+b默认的是r(只读)模式
二、只读操作(r,rb)
f = open(aa.txt,mode='r',encoding='utf-8')
content=f.read()
print(content)
f.close()
注意:encoding表示编码集,根据文件的实际保存编码进行获取数据,更多的时候使用的是utf-8
一种新的文件读取方式:

2. rb.读取出的数据是字节bytes类型,所以一般用来读取非文本文件,比如MP3,图像
,在rb模式下,不能选择encoding
f = open(CCZ/aa.txt,mode='rb') # 文件夹CCZ下的aa文件 ../表示上一层文件夹
bs=f.read()
print(bs.decode("utf-8"))
f.close()
3. 相对路径和绝对路径
../表示上一层文件夹
4.读取文件的方法:
1.read() :将文件全部读取出来。 弊端:文件不宜过大
2.read(n) :读取n个字节,如果继续读取或从当前位置继续而不是从头开始
f = open(CCZ/aa.txt,mode='rb') # 文件夹CCZ下的aa文件 ../表示上一层文件夹
bs=f.read(3) # 读取3个字节
print(bs.decode("utf-8"))
f.close()
5 其他操作
5.1seek(n) 光标移动到n位置,移动的单位是byte,如果是utf-8的中文部分要是3的倍数
一般,使用seek()都是移动到开头或者结尾
seek(0)
seek(0,2),seek()里面的第二个参数:从哪个位置进行偏移,默认是0,表示开头,1表示当前位置,2表示结尾。

5.2 tell()使用tell()可以帮助我们获取当前光标在什么位置
f = open(CCZ/aa.txt,mode='r+') # 文件夹CCZ下的aa文件 ../表示上一层文件夹
f.seek(6) # 光标移动到6字节
bs=f.read(3) # 读取文件的3个字节
print(bs.decode("utf-8"))
f.close() 5.3 读取两个文件的内容。

5.4 readline()一次读取一行数据,每次读取的数据末尾都会有一个\n,需要用strip()方法来去掉

day08读取文件的更多相关文章
- Java 创建文件夹和文件,字符串写入文件,读取文件
两个函数如下: TextToFile(..)函数:将字符串写入给定文本文件: createDir(..)函数:创建一个文件夹,有判别是否存在的功能. public void TextToFile(fi ...
- C#读取文件为byte[]
C#读取文件为byte[] 转载请注明出处 http://www.cnblogs.com/Huerye/ /// <summary> /// 读取程序生成byte /// </sum ...
- HTML5的File API读取文件信息
html结构: <div id="fileImage"></div> <input type="file" value=" ...
- 关于一些对map和整行读取文件操作
public static void main(String[] args) { Map<String, String> map = new HashMap<String, Stri ...
- 使用java读取文件夹中文件的行数
使用java统计某文件夹下所有文件的行数 经理突然交代一个任务:要求统计某个文件夹下所有文件的行数.在网上查了一个多小时没有解决.后来心里不爽就决定自己写一个java类用来统计文件的行数,于是花了两个 ...
- Matlab 读取文件夹中所有的bmp文件
将srcimg文件下的bmp文件转为jpg图像,存放在dstimg文件夹下 str = 'srcimg'; dst = 'dstimg'; file=dir([str,'\*.bmp']); :len ...
- JavaWeb中读取文件资源的路径问题
在做javaweb开发的时候,我们可能会需要从本地硬盘上读取某一个文件资源,或者修改某一个文件,这个时候就需要先找到这个文件,然后用FileInputStrem等文件字节.字符流来将这个文件读取到内存 ...
- File API 读取文件小结
简单地说,File API只规定怎样从硬盘上提取文件,然后交给在网页中运行的JavaScript代码. 与以往文件上传不一样,File API不是为了向服务器提交文件设计的. 关于File API不能 ...
- php函数fgets读取文件
如果一个文件比较大,可以考虑用fgets函数 下面是个例子: #文件作用:fgets读取文件 $start_time = microtime(true); $file_name = "a.t ...
随机推荐
- 设计模式系列之单例模式(Singleton Pattern)
单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式.这种模式涉及到一个单一的类,该类负责创建自己的对象 ...
- 防xss攻击
官方:https://jsxss.com/zh/index.html xss csrf https://www.cnblogs.com/443855539-wind/p/6055816.html 一. ...
- man -f/-k [keyword]在fedora 29 中报错nothing appropriate
我们在使用 man 手册的时候,可以使用man -f [keyword]去查询keyword的在线文档,但是这时候会报错:(图来源自网络) 这是因为我们还没有建立 man 手册的索引缓存: 我们可以使 ...
- Windows 下安装drozer(Windows 10),连接手机(红米note4X)
Windows 下安装drozer(Windows 10),连接手机(红米note4X) 首先下载drozer(http://mwr.to/drozer). 红米手机开发者模式 遇到第一个问题,红米手 ...
- SQLServer查询计划
参考:http://blog.csdn.net/luoyanqing119/article/details/17022649 1. 开启方式 菜单栏:query---Display Estimated ...
- 树莓派3b+ Ubuntu 16.04 MATA系统 ssh远程登陆后修改主机名、用户密码和用户名
写在前面: 刚刚开始写博客,记录下自己的学习过程,备忘. 最近在使用树莓派做智能小车的开发,使用的是树莓派3b+,安装的是Ubuntu 16.04 MATA 系统,安装系统后需要修改主机名,登陆密码以 ...
- Java 前后端List传值
js代码 function click(){ var arrays = new Array(); for (var i = 0; i < arr.length; i++) { arrays.pu ...
- exgcd
int exgcd(int a,int b,int &x,int &y){ if (b==0){ x=1,y=0; return a; } int d=exgcd(b,a%b,y,x) ...
- 回顾servlet生命周期(代码测试),读取初始化参数
servlet生命周期 为简洁,本例使用注解方式来测试,代码部分很简单,只需要新建一个serlet,继承自HttpServlet,重写init,doGet,doPost,destory方法即可,使用注 ...
- [转]C#通过委托更新UI(异步加载)
我们在使用 windowform 编程的时候,我们或许可能会越到,各种在窗体加载的时候,会进行其他的操作: 1.如果是在加载之前进行其它操作,则整个界面出来的很慢,而且若是时间长的话,页面很久才能出来 ...