#!/usr/bin/python
# -*- coding: UTF-8 -*- import os
# 导入 Phone 包 #File 对象方法: file对象提供了操作文件的一系列方法。
#OS 对象方法: 提供了处理文件及目录的一系列方法。
fo = open("useUser.py", "r+")
fo.write("写入的数据");
str = fo.read(10);
print "读取的字符串是 : ", str # 查找当前位置
position = fo.tell();
print "当前文件位置 : ", position # 把指针再次重新定位到文件开头
position = fo.seek(10, 0);
str = fo.read(10);
print "重新读取字符串 : ", str
# 关闭打开的文件
fo.close()
os.rename("useUser.py","fileIo.py")
# 删除文件os.remove()
#rmdir()方法删除目录,删除这个目录之前,它的所有内容应该先被清除os.rmdir('dirname')
#os模块的mkdir()方法在当前目录下创建新的目录
#os.mkdir("test")
#chdir()方法来改变当前的目录
# 将当前目录改为"/home/newdir"
#os.chdir("/home/newdir")
#显示当前的工作目录print os.getcwd()
一、File对象属性
file.closed 返回true如果文件已被关闭,否则返回false。
file.mode 返回被打开文件的访问模式。
file.name 返回文件的名称。
file.softspace 如果用print输出后,必须跟一个空格符,则返回false。否则返回true。
二、open()函数打开一个文件,
1、语法:
file object = open(file_name [, access_mode][, buffering])
2、, access_mode-->打开文件的模式如下:
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
三、文件常用函数
1、file.close()
关闭文件。关闭后文件不能再进行读写操作。
2、file.flush()
刷新文件内部缓冲,直接把内部缓冲区的数据立刻写入文件, 而不是被动的等待输出缓冲区写入。
3、file.fileno()
返回一个整型的文件描述符(file descriptor FD 整型), 可以用在如os模块的read方法等一些底层操作上。
4、file.isatty()
如果文件连接到一个终端设备返回 True,否则返回 False。
5、file.next()
返回文件下一行。
6、file.read([size])
从文件读取指定的字节数,如果未给定或为负则读取所有。
7、file.readline([size])
读取整行,包括 "\n" 字符。
8、file.readlines([sizehint])
读取所有行并返回列表,若给定sizeint>0,返回总和大约为sizeint字节的行, 实际读取值可能比sizhint较大, 因为需要填充缓冲区。
9、file.seek(offset[, whence])
设置文件当前位置
10、file.tell()
返回文件当前位置。
11、file.truncate([size])
截取文件,截取的字节通过size指定,默认为当前文件位置。
12、file.write(str)
将字符串写入文件,没有返回值。
13、file.writelines(sequence)
向文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符。