使用open()函数以'w'模式打开文件进行写入操作时,如果原文件中有内容,则会被新写入的内容覆盖掉
使用open()函数以'w'模式打开文件进行写入操作时,如果原文件中有内容,则会被新写入的内容覆盖掉
参考答案和解析
#INCLUDE <STDIO.H>#INCLUDE <STDLIB.H>#INCLUDE <UNISTD.H>#INCLUDE <FCNTL.H>#INCLUDE <STRING.H>INT MAIN(){ INT FD = 0; //路径中的目录若不存在将导致文件创建失败 CHAR FILENAME[20] = "/HOME/ITHEIMA/A.TXT"; //打开文件 FD = OPEN(FILENAME, O_RDWR | O_EXCL | O_TRUNC, S_IRWXG); IF (FD == -1){ //判断文件是否成功打开 PERROR("FILE OPEN ERROR.N"); EXIT(-1); } //写数据 INT LEN = 0; CHAR BUF[100] = { 0 }; SCANF("%S", BUF); LEN = STRLEN(BUF); WRITE(FD, BUF, LEN); CLOSE(FD); //关闭文件 PRINTF("---------------------N"); //读取文件 FD = OPEN(FILENAME, O_RDONLY); //再次打开文件 IF (FD == -1){ PERROR("FILE OPEN ERROR.N"); EXIT(-1); } OFF_T F_SIZE = 0; F_SIZE = LSEEK(FD, 0, SEEK_END); //获取文件长度 LSEEK(FD, 0, SEEK_SET); //设置文件读写位置 WHILE (LSEEK(FD, 0, SEEK_CUR) != F_SIZE) //读取文件 { READ(FD, BUF, 1024); PRINTF("%SN", BUF); } CLOSE(FD); RETURN 0;}
相关考题:
file=open('users/yourname/desktop/file','w')file.write('helloworld!')这句代码的作用是()。 A.打开一个文件,不管文件在不在B.打开文件并写入C.在桌面上打开一个文件(路径得看个人具体情况),w的意思是,如果有则在文件里写入helloworld,如果没有则创建一个文件。D.打开文件,没有报错
若以“w+”方式打开一个已存在的文件,则以下叙述正确的是______。A.文件打开时,原文件内容不被删除,位置指针移到文件末尾,可作添加和读操作B.文件打开时,原有文件内容被删除,位置指针移到文件开头,可作写和读操作C.文件打开时,原有文件内容被删除,只可作写操作D.以上各种说法皆不正确
当用( )方式打开文件时,如果对文件进行写操作,则写入的数据附加到原文件的后面。A.OutputSXB 当用( )方式打开文件时,如果对文件进行写操作,则写入的数据附加到原文件的后面。A.OutputB.AppendC.InputD.Random
下面哪一个是以添加(追加)模式打开文件做写入操作? A:f.open("f","r")B:f.open("f","w")C:f.open("f","a")D:f.open("f","w+")
下面对语句Open“text.Dat”for Output As #FreeFile的功能说明中错误的是()A、以顺序输出模式打开文件Text.DatB、如果文件Text.Dat不存在则建立一个新文件C、如果文件Text.Dat已存在,则打开该文件,新写入的数据将增添到该文件中D、如果文件Text.Dat已存在,则打开该文件,新写入的数据将覆盖原有的数据
下列选项中,关于文件打开模式的说法错误的是()。A、“r”表示以只读方式打开文件,并将文件指针指向文件头。B、“w”表示以写入方式打开文件,并将文件指针指向文件尾。C、“a”表示以追加方式打开文件,并将文件指针指向文件尾。D、“x”表示创建并以写入方式打开,并将文件指针指向文件头。
使用文件系统时,通常要显式地进行open( )操作,这样做的目的是()。A、将文件控制块(FCB)读入内存B、将文件控制块(FCB)写入磁盘或缓存C、将文件内容读入内存D、将文件内容写入磁盘或缓存
下面对语句 Open "Rizhi.dat" For Output As #1的功能描述错误的是()A、以顺序输出模式打开文件"Rizhi.dat"B、如果文件"Rizhi.dat"不存在,则建立一个新文件C、如果文件"Rizhi.dat"已存在,则打开该文件,新写入的的数据将添加到文件末尾D、如果文件"Rizhi.dat"已存在,则打开该文件,新写入的的数据将覆盖原来的数据
Open语句中,关键字For用于指定打开文件的方式,下列说法错误的是()。A、For Input指顺序打开文件,只能读取文件内容。B、For Output指顺序打开文件,向文件写入内容。C、For Append指顺序打开文件,向文件写入内容,与For Output不同的是,它覆盖原有的内容。D、For Binary指以二进制方式打开文件。
下列说法错误的是()。A、当用Write#语句写顺序文件时,文件必须以Output或Append方式打开B、用Open语句打开一个文件时,对同一个文件可以用几个不同的文件号打开C、用Output和Append方式打开文件时,不用将文件关闭,就能重新打开文件D、用Append方式打开文件时,进行写操作,写入文件的数据附加到原来文件的后面
单选题下面对语句 Open "Rizhi.dat" For Output As #1的功能描述错误的是()A以顺序输出模式打开文件Rizhi.datB如果文件Rizhi.dat不存在,则建立一个新文件C如果文件Rizhi.dat已存在,则打开该文件,新写入的的数据将添加到文件末尾D如果文件Rizhi.dat已存在,则打开该文件,新写入的的数据将覆盖原来的数据
单选题下面对语句的功能说明中错误的是( )。Open Text.Dat For Output As # FreeFileA以顺序输出模式打开文件Text.DatB如果文件Text.Dat不存在,则建立一个新文件C如果文件Text.Dat已存在,则打开该文件,新写入的数据将增添到该文件中D如果文件Text.Dat已存在,则打开该文件,新写入的数据将覆盖原有的数据
单选题Open语句中,关键字For用于指定打开文件的方式,下列说法错误的是()。AFor Input指顺序打开文件,只能读取文件内容。BFor Output指顺序打开文件,向文件写入内容。CFor Append指顺序打开文件,向文件写入内容,与For Output不同的是,它覆盖原有的内容。DFor Binary指以二进制方式打开文件。
单选题下列选项中,关于文件打开模式的说法错误的是()。A“r”表示以只读方式打开文件,并将文件指针指向文件头。B“w”表示以写入方式打开文件,并将文件指针指向文件尾。C“a”表示以追加方式打开文件,并将文件指针指向文件尾。D“x”表示创建并以写入方式打开,并将文件指针指向文件头。
单选题有以下程序段:FILE*fp;if((fp=fopen(test.txt,w))==NULL){ printf(不能打开文件!); exit(0);}else printf(成功打开文件!);若文件test.txt已存在,则以下叙述正确的是( )。A程序运行后,文件test.txt中的原有内容将全部消失B程序运行时,会因文件存在而出错C对文件test.txt进行写操作后,可以随机进行读取D对文件test.txt写入的内容总是被添加到文件尾部