问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

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

发布网友 发布时间:2022-04-23 21:07

我来回答

2个回答

热心网友 时间:2022-05-03 21:04

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 一起来用.

热心网友 时间:2022-05-03 22:22

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 一起来用.
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
找专业防水队做完还漏水怎么维权 法院会受理房屋漏水造成的纠纷吗? 巴西龟最长活多久,家养!!! 养胃的药最好的是什么啊 婴儿积食发烧不愿吃药怎么办 板门穴位在哪个部位 手机设置放偷看的方法? 凝结水回收器生产厂家? 个人账户养老金预测公式:现有5万元,缴费20年,能领多少钱? 临沂比较有名的男装品牌 *机不脱冰,*成功后,水流停止,压缩机停止,进入脱冰状态,但是不脱冰(不融冰)? 制冰机一直处于脱冰状态直至停机怎么解决 制冰机不脱冰怎么维修 制冰机制冰不脱冰 求两个linux读取文件内容命令 制冰机不脱冰怎么处理 制冰机不脱冰? 制冰机不脱冰,制冰一切正常怎么回事? 耐雪th600制冰机e4故障是什么原因? 房屋租赁附加协议大概包含哪些内容 出租房屋的合同要特别注明家具和电器的 求:家电租赁合同的范文, 要完整版,不要说怎样构思,如果有现成的文档那... 红米手机怎么强制关机? iphone尾插排线问题 苹果5s尾插坏了怎么办? 手机尾插老是坏是什么原因? 苹果手机冲不进电是尾插出现故障了吗? 手机尾插和排线坏了会有什么症状? 支付宝挂号支付成功后,已经出来了排队号,我直接去诊室外面等叫号就可以吗?还是要在医院取纸质挂号单? 苹果手机6p排线问题怎么排除故障? 制冰机制冰正常但脱水困难或不脱水,是什么情况? 民法典对装修垃圾清运费的规定? 民法典对装修垃圾清运费的规定 民法典有规定收取物业费后还要向业主每户收36元垃圾处理费吗? 民法典从什么时候起住宅装修拉圾停止物业收费 新民法典2021年新规物业能收装修垃圾费么? 小区公摊水电费+,垃圾清运费,砸墙费,这些费用在民法典的物业管理条例中全_百度问一问 装修垃圾清运费标准 民法典关于公共能耗费的新规定是什么 装修垃圾清运费用该归谁? 2021年民法典物业费收费标准 民法典垃圾清运费建筑 动车是在火车站上车还是高铁站? 物业管理条例有没有关于装修垃圾清理费,怎么收费?具体点的。_百度问一问 高铁在哪里上车 2021年9月1日物业费新规定 什么是装修垃圾清运费?装修垃圾清运费如何收费 想问深圳北站高铁进站口是在东西广场里面还是在哪里到上车想要详细流程谢谢&#128591; 国家对建筑垃圾清运收费标准有什么规定? 上海去南京高铁哪里上车?