linuxc文件读写|关于linux C的文件读写

linuxc文件读写|关于linux C的文件读写的第1张示图

① c语言如何读写 linux文本文件

Linux下C语言的文件(fputc,fgetc,fwrite,fread对文件读写操作)

//

fputc 向文件写入字符

#include <stdio.h>

#include <stdlib.h>

main()

{

FILE *fp;

char ch;

if((fp=fopen("test.txt","w"))==NULL)

{

printf("不能打开文件");

exit(0);

}

while ((ch=getchar())!='')

fputc( ch, fp );

fclose(fp);

}

————-

小提示:

fp=fopen("test.txt","w") ,把"w"改为 "a" 可以创建文件并且追加写入内容

exit(0); 需要包含 stdlib.h 头文件,才能使用

//

fgetc 读取字符

#include <stdio.h>

#include <stdlib.h>

main( int argc, char *argv[] )

{

char ch;

FILE *fp;

int i;

if((fp=fopen(argv[1],"r"))==NULL)

{

printf("不能打开文件");

exit(0);

}

while ((ch=fgetc(fp))!=EOF)

putchar(ch);

fclose(fp);

}

文件结尾,通过判断 EOF

//

fwrite 的使用

使数组或结构体等类型可以进行一次性读写

#include <stdio.h>

#include <stdlib.h>

main()

{

FILE *fp1;

int i;

struct student{

char name[10];

int age;

float score[2];

char addr[15];

}stu;

if((fp1=fopen("test.txt","wb"))==NULL)

{

printf("不能打开文件");

exit(0);

}

printf("请输入信息,姓名 年龄 分数1 分数2 地址:");

for( i=0;i<2;i++)

{

scanf("%s %d %f %f %s",stu.name,&stu.age,&stu.score[0],&stu.score[1], stu.addr);

fwrite(&stu,sizeof(stu),1,fp1);

}

fclose(fp1);

}

//

fread 的使用

#include <stdio.h>

#include <stdlib.h>

main()

{

FILE *fp1;

int i;

struct student{

char name[10];

int age;

float score[2];

char addr[15];

}stu;

if((fp1=fopen("test.txt","rb"))==NULL)

{

printf("不能打开文件");

exit(0);

}

printf("读取文件的内容如下:");

for (i=0;i<2;i++)

{

fread(&stu,sizeof(stu),1,fp1);

printf("%s %d %7.2f %7.2f %s",stu.name,stu.age,stu.score[0],stu.score[1],stu.addr);

}

fclose(fp1);

}

//

fprintf , fscanf, putw , getw , rewind , fseek 函数

这些函数的话我就不演示了 ,

这些函数基本都一对来使用,例如 fputc 和 fgetc 一起来用.

② linux系统如何读写属性为c的文件

Linux把外部设备也当成文件来管理,这是继承了Unix一切皆文件的设计思想。/dev目录内下的文件皆外部设备,所以你必须容有相应的内核模块来驱动相应的设备,否则此设备无法读写。你是在测试COM口么?COM口有没有连接测试设备?没有的话,就算有相应的内核模块也是白搭的,就象光有电灯开关,没安装灯泡,你怎么按开关都白搭。

③ linux如何读写文件

我不太懂你的意思~如果你要写文件的话,可以输入:#vi 文件名内.文件后缀接着输入数据保存就可容以了~要打开文件可以这样:#vi 文件名.文件后缀读取文件内容#cat 文件名.文件后缀不知道你要问的是不是这些问题~

④ 关于linux C的文件读写

#include <stdio.h>#include <string.h>#include <stdlib.h>#define MAX 1024void lower1(char *p){ int i,len; len = strlen(p); for(i=0;i<len;i++) if(p[i] >= 'A' && p[i] <= 'Z') p[i] += 32;}int main(void){ FILE *fp,*fpw; char *p; char buf[MAX],buf1[MAX]="GAME OVER"; int n,m; fp = fopen("txt","rw"); if(fp == NULL) { perror("Fail to open"); exit(1); } while((n = fread(buf,sizeof(char),MAX-1,fp)) > 0) { buf[n]='\0'; lower1(buf); printf("%s",buf); printf("%d",n); } rewind(fp); while((n = fread(buf,sizeof(char),MAX-1,fp)) > 0) //你这里什么意思?你这里有问题 { fputs(buf,fp); }if(n < 0){ perror("Fail to read"); exit(1); } fclose(fp); return 0;}顺便,看样子你也知道,读写无法同时进行的,所以,你读万,一定要rewind一下

⑤ linux 下c语言 对文件进行读写

1. asctime(local)函数,是将struct tm*类型的参数转换成字符串类型,这样,方便fprintf函数回将时间按照字符串输出来2. “答w+"是从文件开始写入。所以,每次重写都会覆盖以前的时间。可以使用"a+",在文件后面追加。即,将fp=fopen("time.txt", "w+")改成fp=fopen("time.txt", "a+")3.有一个网站,可以查找linux的系统api函数http://linux.die.net/

⑥ Linux C 缓冲文件和非缓冲文件读写方式用法

1.用write, read, open等系统调用编写分别实现如下功能的程序(要求进行必要的出错检查版):(1)创建一个权文件testfile.txt,文件内容从键盘输入;(2)将testfile.txt的内容显示在屏幕上,并将testfile.txt的内容复制到一个新的文件file2.txt中。实验代码:#include<unistd.h>#include<sys/types.h>#include<sys/stat.h>#include<fcntl.h>#include<stdio.h>#include<stdlib.h>#include<stdio.h>#include<string.h>int main()

⑦ Linux编程,怎样用C语言创建、读、写文件呀希望各位赐教!谢谢

既然得到了这文件指针,你想怎么打开都行,无需知道以前是什么模式。用open更新你想要的打开方式。o_rdonly以只读方式打开文件o_wronly以只写方式打开文件o_rdwr以可读写方式打开文件。上述三种旗标是互斥的,也就是不可同时使用,但可与下列的旗标利用or(|)运算符组合。o_creat若欲打开的文件不存在则自动建立该文件。o_excl如果o_creat也被设置,此指令会去检查文件是否存在。文件若不存在则建立该文件,否则将导致打开文件错误。此外,若o_creat与o_excl同时设置,并且欲打开的文件为符号连接,则会打开文件失败。o_noctty如果欲打开的文件为终端机设备时,则不会将该终端机当成进程控制终端机。o_trunc若文件存在并且以可写的方式打开时,此旗标会令文件长度清为0,而原来存于该文件的资料也会消失。o_append当读写文件时会从文件尾开始移动,也就是所写入的数据会以附加的方式加入到文件后面。o_nonblock以不可阻断的方式打开文件,也就是无论有无数据读取或等待,都会立即返回进程之中。o_ndelay同o_nonblock。o_sync以同步的方式打开文件。o_nofollow如果参数pathname所指的文件为一符号连接,则会令打开文件失败。o_directory如果参数pathname所指的文件并非为一目录,则会令打开文件失败。这是你要的r打开只读文件,该文件必须存在。r+打开可读写的文件,该文件必须存在。w打开只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。w+打开可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。a以附加的方式打开只写文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。a+以附加方式打开可读写的文件。若文件不存在,则会建立该文件,如果文件存在,写入的数据会被加到文件尾后,即文件原先的内容会被保留。

⑧ linux怎么c语言读取普通文件内容

1、用fgets函数复可以读取文件中某制行的数据,某列数据就必须一个一个读入每行的第几个字符,再存入到一个字符串当中。2、例程:#include<stdio.h>#include<string.h>void main(){ char a[100],b[100],c[100]; int i=3,j=4,k=0; //第三行,第四列 FILE *fp = fopen("data.txt","r"); while(fgets(c,100,fp)){ //读入每行数据 i–; if(i==0) strcpy(a,c); //读到第三行数据 b[k++]=c[j-1]; //把每行的那列字符拷到b中 } b[k]=0; printf("第%d行数据:%s\n",i,a); printf("第%d列数据:%s\n",j,b); fclose(fp);

⑨ LINUX C语言写一个读写文件的程序,读取的话,要把文件内容显示出来,写的话,就是写进文件里面咯

#include<stdio.h>#include<stdlib.h>intmain(){FILE*pf=fopen("a.txt","r");if(pf==NULL){printf("opena.txtfilefailed!");exit(0);}FILE*pf2=fopen("b.txt","w");if(pf2==NULL){printf("openb.txtfilefailed!");fclose(pf);exit(0);}charch;while(!feof(pf)){ch=fgetc(pf);putchar(ch);fputc(ch,pf2);}fclose(pf2);fclose(pf);return0;}

⑩ linux下如何用C程序读写本地文件

是一样来的。如果是同目自录则直接写文件名,如果是不同的目录,可以写明路径。如: 读同目录文件local.txtfopen("local.txt","r");读不同目录文件 /home/yourname/otherdir/other.txtfopen("/home/yourname/otherdir/other.txt","r");你可以使用pwd命令来获得文件路径

未经允许不得转载:山九号 » linuxc文件读写|关于linux C的文件读写

赞 (0)