file文件操作

open()成功执行后返回一个文件对象,以后所有对该文件的操作都可以通过这个“句柄”来进行,现在主要讨论下常用的输入以及输出操作。

输出:

read()方法用于直接读取字节到字符串中,可以接参数给定最多读取的字节数,如果没有给定,则文件读取到末尾。

readline()方法读取打开文件的一行(读取下个行结束符之前的所有字节),然后整行,包括行结束符,作为字符串返回。

readlines()方法读取所有行然后把它们作为一个字符串列表返回

eg:

文件/root/10.txt的内容如下,分别使用上面的三个方法来读取,注意区别:

1.read():

>>>> cat /root/10.txt

I‘ll write this message for you

hehe,that‘s will be ok.

>>>> fobj = open(‘/root/10.txt‘)    ##默认已只读方式打开

>>>> a = fobj.read()

>>>> a

"I‘ll write this message for you\nhehe,that‘s will be ok.\n"   ##直接读取字节到字符串中,包括了换行符

>>>> print a

I‘ll write this message for you

hehe,that‘s will be ok.

>>>> fobj.close()    ##关闭打开的文件

2.readline():

>>>> fobj = open(‘/root/10.txt‘)

>>>> b  = fobj.readline()

>>>> b

"I‘ll write this message for you\n"    ##整行,包括行结束符,作为字符串返回

>>>> c = fobj.readline()

>>>> c

"hehe,that‘s will be ok.\n"

##整行,包括行结束符,作为字符串返回

>>>> fobj.close()

3.readlines():

>>>> fobj = open(‘/root/10.txt‘)

>>>> d = fobj.readlines()

>>>> d

["I‘ll write this message for you\n", "hehe,that‘s will be ok.\n"]    ##读取所有行然后把它们作为一个字符串列表返回

>>>> fobj.close()

输入:

write()方法和read()、readline()方法相反,将字符串写入到文件中。

和readlines()方法一样,writelines()方法是针对列表的操作。它接收一个字符串列表作为参数,将他们写入到文件中,换行符不会自动的加入,因此,需要显式的加入换行符。

eg:

1.write():

>>>> fobj = open(‘/root/3.txt‘,‘w‘)

###确保/root/3.txt没有存在,如果存在,则会首先清空,然后写入。

>>>> msg = [‘write date‘,‘to 3.txt‘,‘finish‘]    ###这里没有显式的给出换行符

>>>> for m in msg:

...      fobj.write(m)

...

>>>> fobj.close()

>>>> cat /root/3.txt

write dateto 3.txtfinish

>>>> fobj = open(‘/root/3.txt‘,‘w‘)    ###覆盖之前的数据

>>>> msg = [‘write date\n‘,‘to 3.txt\n‘,‘finish\n‘]     ###显式给出换行符

>>>> for m in msg:

...    fobj.write(m)

...

>>>> fobj.close()

>>>> cat /root/3.txt

write date

to 3.txt

finish

2.writelines():

>>>>fobj = open(‘/root/3.txt‘,‘w‘)

>>>>msg = [‘write date\n‘,‘to 3.txt\n‘,‘finish\n‘]

>>>>fobj.writelines(msg)

>>>>fobj.close()

cat /root/3.txt

write date

to 3.txt

finish

时间: 2024-10-11 23:13:05

file文件操作的相关文章

关于file文件操作的头文件 【LINUX】 (转载)

转自:http://blog.csdn.net/figo77ll/article/details/3156052 Linux下如果要对文件进行读取访问,需要包含至少以下两个头文件: #inlcude <unistd.h> #inlcude <fcntl.h> 其中fcntl.h包含了create和open命令,unistd包含了其他的诸如read, write, close等命令.很奇怪为什么不把fcntl的功能直接放到unistd里面呢.. 如果要对STDIN,STDOUT进行“

Android的file文件操作详解

Android的file文件操作详解 android的文件操作要有权限: 判断SD卡是否插入 Environment.getExternalStorageState().equals( android.os.Environment.MEDIA_MOUNTED); 获得sd卡根目录 File skRoot = Environment.getExternalStorageDirectory(); 获得私有根目录 File fileRoot = Context.getFilesDir()+""

File 文件操作类 大全

File  文件操作类  大全 许多人都会对文件操作感到很难  我也是  但是一个好的项目中必定会涉及到文件操作的 文件的复制 粘贴  等等等 公司大佬写了 一个文件操作的工具类 感觉还是棒棒的啦   代码如下 : 1 /** 2 * Copyright © 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved. 3 */ 4 package

廖雪峰js教程笔记14 file文件操作

在HTML表单中,可以上传文件的唯一控件就是<input type="file">. 注意:当一个表单包含<input type="file">时,表单的enctype必须指定为multipart/form-data,method必须指定为post,浏览器才能正确编码并以multipart/form-data格式发送表单的数据. 出于安全考虑,浏览器只允许用户点击<input type="file">来选择本地

30天C#基础巩固------集合,File(文件操作 ),Encoding处理字符集

一:泛型    关于泛型我自己也不是很好的理解,但是具体的运用还是可以的,可以这样的理解,我们定义一个数组,但是不知道将来它是保存什么类型的值,很是矛盾,这个时候泛型就出现了,它可以解决这个场景,list<T> 以前这里是类型,前提是我们知道这里将来保存什么值,现在不知道了使用T(Type)来表示,将来什么类型的值都可以保存在里面.这个在集合,项目底层一些公共的接口,类之中使用的特别多. 二:集合 线型集合----List<T> List<int> array = ne

java File文件操作共用方法整理

package org.jelly.util; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FileReader; import java.i

python学习记录8 ----------file文件操作

----------------------------复制菜鸟教程---------------------------- 链接:https://www.runoob.com/python3/python3-file-methods.html ------------------------------------------------------------------------- 对文件进行操作需要三个步骤:1.file.open():2.文件操作:3.file.close() ope

(文件操作)Android相关的File文件操作

判断文件是否存在: /** * 判断文件是否存在 * * @param path 文件路径 * @return [参数说明] * @return boolean [返回类型说明] */ public static boolean isFileExist(String path) { if (TextUtils.isEmpty(path)) { return false; } File file = new File(path); return file.exists(); } 判断文件是否存在时

file 文件操作

#include<stdio.h> #include<stdlib.h> #include<ctype.h> int fun() { int ch; int ret=0; while(isdigit(ch=getchar()))  {  ret=ret*10+ch-48;  }  ungetc(ch,stdin); return ret; }   void fun1() { int ch; int ret=fun(); printf("%d\n",r