文件读写

Python读写文件

空扰寡人 提交于 2020-10-29 00:50:00
Python读写文件 1.open 使用open打开文件后一定要记得调用文件对象的close()方法。比如可以用try/finally语句来确保最后能关闭文件。 file_object = open('thefile.txt') try: all_the_text = file_object.read( ) finally: file_object.close( ) 注:不能把open语句放在try块里,因为当打开文件出现异常时,文件对象file_object无法执行close()方法。 2.读文件 读文本文件 input = open('data', 'r') #第二个参数默认为r input = open('data') 读二进制文件 input = open('data', 'rb') 读取所有内容 file_object = open('thefile.txt') try: all_the_text = file_object.read( ) finally: file_object.close( ) 读固定字节 file_object = open('abinfile', 'rb') try: while True: chunk = file_object.read(100) if not chunk: break do_something_with(chunk)

fopen参数@windows和linux的区别

ぐ巨炮叔叔 提交于 2020-02-29 08:16:54
作为文件的数据,在计算机中都是以二进制的形式存储的。 因此,对于文本文件和二进制文件的区分,不是在物理上的,而是在逻辑上的。 在开发时,遇到一个小问题,代码在linux下运行读写文件正常,而在windowns下读写文件出现异常。 【现象】 在linux中使用fopen第2个参数为"r"或"w"打开二进制文件后读写没有任何问题,但将代码移到windows后,读写却出现了异常。将参数改成"rb"和"wb"后,读写正常。 【原因】 在学习C语言文件操作后,我们知道打开文件的函数是fopen,也知道它的第二个参数mode是标志字符串。其中,如果字符串中出现'b',则表明是以打开二进制(binary)文件,否则是打开文本文件。 具体如下: 'r' 只读方式打开,将文件指针指向文件头,如果文件不存在,则File返回空。 'r+' 读写方式打开,将文件指针指向文件头,如果文件不存在,则File返回空。 'w' 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。 'w+' 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。 'a' 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。 'a+' 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。 'x' 创建并以写入方式打开,将文件指针指向文件头

【C++】读取文件

与世无争的帅哥 提交于 2019-12-05 18:01:43
包含头文件 #include<fstream>(不带扩展名“.h“) 读写文件:ifstream(读)、ofstream(写)、fstream(读写):#include<ifstream>;#include<ofstream>;#include<fstream>,分别从istream、ostream、iostream中引申而来的,所以fstream的对象可以使用其父类成员来访问数据。 获取文件名 geetline(cin,filename,‘\n’);方式得到用户输入的用户名,其中filename为String类型;与同控制台(console)交互同样的成员函数(cin&cout)来进行输入输出。 #inclulde<iostream> #include<fstream> //文件头文件 #include<String> int main() { ifstream in; //ifstream读文件 string filename; //文件名 getline( cin , filename, '\n' ); //获取文件名,也可以使用cin>>filename;但是不能获取空格 in.open(filename); if (!in)//或if_open() { cerr << "打开文件出错" <<endl; return 1 ; } //逐个读取字符 char ch;

java InputStream 文件读写 网络UDP/TCP

[亡魂溺海] 提交于 2019-11-29 01:00:29
java io流 传输操作 字节流和字符流的区别: 读写单位不同:字节流以字节(8bit)为单位,字符流以字符为单位,字符流就是 : 字节流+编码表。 处理对象不同:字节流能处理所有类型的数据(如图片、avi等),而字符流只能处理字符类型的数据。 纯文本数据优先考虑字符流 别的 字节流 常用 字节流: FileInputStream //字符流读文件 FileOutputStream //字符流写文件 BufferedInputStream //带缓冲区的 读文件 BufferedOutputStream //带缓冲区 写文件 字符流: Writer Reader FileReader //文件读 FileWriter //文件写 BufferedReader //缓存读操作 BufferedWriter //缓存写操作 创建一个可以往文件中写入字符数据的字符输出流对象, 如果文件不存在,则会自动创建。 如果文件存在,则会被覆盖。 因为不同系统换行符号不同所以,可以调用系统函数获得换行符号,便于不同系统移植 private static final String LINE_SEPARATOR = System . getProperty ( "line.separator" ); //换行符 FileWriter fw = new FileWriter("demo.txt"