00-1010无论是编程还是编程,只要用电脑,肯定会处理文件。与计算机相关的一切都很难绕过文件,或多或少都是用文件转换的。
能否用编程操作文件,是你区别于程序员和普通人的重要标志。
用过电脑的人对文件有一个大概的印象,基本熟悉以下基本的文件操作。
打开文件、关闭文件、读取文件、写入文件、移动文件、删除文件、创建文件和创建文件夹。下面是C和python如何操作文件。
1.文件基本知识
,已经有一篇专门介绍C语言文件操作的文章,这里只简单介绍一下。操作C语言文件一般有两种方式,一种是使用标准库,另一种是使用系统库。但是,系统库根据不同的操作系统平台而不同。这里指的是标准库的文件操作。
Open file //pname:是一个字符指针,它将指向要打开或创建的文件的文件名字符串。
//mode:是指向文件处理方法字符串的字符指针。
//正常返回:打开文件的文件指针。
//返回异常:空,表示打开操作不成功。
FILE *fopen(char *pname,char *模式);Close file //fp:指向打开文件的文件指针。
//正常返回:0。
//异常返回:EOF,表示关闭文件时出错。
int fc lose(FILE * FP);读取文件//从文件中读取一个字符。
int fgetc(FILE * FP);
//从文件中读取字符串。
char *fgets(char *str,int n,FILE * FP);
//以二进制形式读取文件中的数据
//从fp指定的文件中,将sife*count数据以二进制形式读入缓冲区指示的数据区。
int fread(void *buffer,无符号sife,无符号计数,FILE * FP);写入文件//向文件中写入一个字符。
int fputc(int ch,FILE * FP);
//向文件中写入一个字符串。
int fputs(char *str,FILE * FP);
//将格式化数据写入文件
int fprintf(FILE *fp,char *格式,arg _ list);
//以二进制形式将数据写入文件。
//将缓冲区指定的数据缓冲区中的sife*count数据以二进制形式写入fp指定的文件中。
int fwrite(void *buffer,无符号sife,无符号计数,FILE * FP);移动文件标准库不提供移动文件的功能。您需要创建一个新文件,逐个读取原始文件的内容,然后删除原始文件。
Delete file //filename是要删除的文件名,可以是目录。如果参数文件名是文件,调用unlink()处理;
//如果参数文件名是目录,调用rmdir()进行处理。
int remove(char * filename);create file//与文件一起打开,但模式需要指定为写模式。
FILE * fopen(char * pname,char *模式);
00-1010c语言的文件操作往往比较原始,除非有特殊要求,一般不建议使用C语言的文件操作。一般推荐Python操作文件,因为python封装的接口更容易使用。
关闭文档
用Python内置的Open()函数打开一个文件,创建一个文件对象,然后使用相关方法调用它进行读取。
//file_name变量是一个字符串值,包含要访问的文件的名称。
//access_mode决定打开文件的模式:只读、写入、追加等。(默认值为追加)。
//如果缓冲值设置为0,则不会有注册。如果缓冲值为1,则该行将在访问文件时注册。
//如果缓冲值设置为大于1的整数,则表示这是的寄存器区域的缓冲区大小。如果该值为负,则寄存器区域的缓冲区大小为系统默认值。
对象=打开(file _ name,access _ mode,缓冲)文件对象的属性当一个文件被打开时,它实际上创建了一个文件对象,这个文件对象保存了文件的具体信息,如下所示:
fp=open('1.txt ',' wb ')属性描述了该文件,closed关闭该文件,并成功返回true;刷新暂停中的任何未写信息,关闭文件的文件模式,返回打开文件的访问模式。文件名返回文件的名称。
2.C语言文件基本操作
-right">文件的读写操作写()write()方法可将任何字符串写入一个打开的文件。
读()阅读()方法从一个打开的文件中读取一个字符串。
readline()f.readline()如果返回一个空字符串,说明已经已经读取到最后一行。f.readline()会从文件中读取单独的一行。
readlines()f.readlines()将以列表的形式返回该文件中包含的所有行,列表中的一个表示文件的一行。如果设置可选参数sizehint,则重新指定长度的字节,并将这些字节按行分割。
文件的定位操作tell()方法获取文件的当前位置;
查找(偏移量,来自)方法改变当前文件的位置。偏移量表示要移动的字节数,从变量指定开始移动字节的参考位置。如果从被设置为0,这意味着将文件的开头作为移动字节的参考位置。如果设为1,则使用当前的位置作为参考位置。如果它被设为2,那么该文件的末尾将作为参考位置。
文件的重命名和删除
rename()//rename()方法需要两个参数,当前的文件名和新文件名。 os.rename(current_file_name, new_file_name)remove()os.remove(file_name)python目录操作
mkdir()mkdir()创建新目录。
chdir()chdir()方法改变当前的目录。
getcwd()getcwd()获取当前目录。
rmdir()rmdir()方法删除目录,目录名称以参数传递。在删除这个目录之前,它的所有内容应该先被清除。