linuxc读取txt文件|c语言如何读写 linux文本文件

linuxc读取txt文件|c语言如何读写 linux文本文件的第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("不能打开文件\n");exit(0);}while ((ch=getchar())!='\n')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("不能打开文件\n");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 地址:\n");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("读取文件的内容如下:\n");for (i=0;i<2;i++){fread(&stu,sizeof(stu),1,fp1);printf("%s %d %7.2f %7.2f %s\n",stu.name,stu.age,stu.score[0],stu.score[1],stu.addr);}fclose(fp1);}//fprintf , fscanf, putw , getw , rewind , fseek 函数这些函数的话我就不演示了 ,这些函数基本都一对来使用,例如 fputc 和 fgetc 一起来用.

② 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语言读取txt文件中的列数据

1.用fgets函数可以读取文件中某行的数据,某列数据就必须一个一个读入每行的第回几个字符,再存入到一答个字符串当中。2.例程:

#include<stdio.h>#include<string.h>voidmain(){chara[100],b[100],c[100];inti=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",i,a);printf("第%d列数据:%s",j,b);fclose(fp);}

④ Linux下 C语言实现打开一个txt文档,读取所有数据,并发送给socket程序服务端。 以下代码能读取不能发送

应该是调用完 write 之后马上 close 了导致服务端还没收下来,你在close前加个 sleep(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语言读取普通文件内容

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语言做个程序 创建一个txt文件 执行程序写一段话 写进txt

示例教程:来

1. 编写代码

在linux下面使用命源令创建main.c文件

vimmain.c

main.c代码:

#include<stdio.h>#include<sys/types.h>#include<sys/stat.h>#include<unistd.h>#include<fcntl.h>#include<string.h>#defineMAX50intmain(){intfd;charbuf[MAX];fd=open("1.txt",O_WRONLY|O_CREAT|O_APPEND);if(fd==-1){printf("文件创建失败");return-1;}printf("请输入要写入的句子:");fgets(buf,MAX,stdin);write(fd,buf,MAX);printf("写入成功");return0;}

2.编译源程序

gccmain.c-omain

结果在此路劲下会出现main源程序

完成

⑧ linux C 从多种文件中只读取txt文件 各位大神 跪求!!!

你在程序中首先打开那个目录,其次再获取目录下的各文件的名称,再对文件名称的后缀做判断,看后缀是不是以.txt结束的不就得了嘛!

⑨ Linux C语言怎么读取文件指定行内容

1、用fgets函数可以读取文件中某行的数据,某列数据就必须一个一个读入每行的第几个字符,再存入到一个字符串当中。2、例程:

#include<stdio.h>#include<string.h>voidmain(){chara[100],b[100],c[100];inti=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",i,a);printf("第%d列数据:%s",j,b);fclose(fp);}

⑩ linux下c语言 读取文件内容

没测试过,不过问题应该是fgetc这里fgetc获取到第一个字符,比如第一行的'#'号,然后fgets获取到后面的字符,打印版当然就没有权第一个字符了,解决方式要么只用fgets,要么把fgetc获取的字符也打印出来

未经允许不得转载:山九号 » linuxc读取txt文件|c语言如何读写 linux文本文件

赞 (0)