全站搜索未启用
跳到主要内容

文本三:文本文件的输出访问操作

1.向文本文件输出数据的函数:

  fputc()函数和fputs()函数

int fputc(int ch, FILE* stream); //向文件写入一个字符

int fputs(const char* str, FILE* stream); //向文件写入一个字符串

向文本文件中输出数据的程序举例

例1:

向d盘xxk目录下的wr1.dat文本文件依次输出26个小写英文字母,以及0-9这10个数字字符。

分析:若d盘上没有xxk目录,则要建立此目录。在程序的主函数中,首先要根据文件名和访问方式打开此文件,得到对应的文件流,接着依次向其写入26个小写英文字母,以及0-9共10个数字字符,最后关闭该文件。

#include<stdio.h>

#include<stdlib.h>

void main(void) {

  int i;

  FILE* f1;

  f1=fopen("d:\\xxk\\wr1.dat","w");

  if (f1==NULL) {

    printf("不能够打开文件!\n");

    exit(1);

  }

//接着是对文件的写入数据的过程

  for(i=0;i<26;i++) fputc('a'+i, f1);

  for(i=0;i<10;i++) fputc('0'+i, f1);

  fclose(f1);

}

文件内容:abcdefghijklmnopqrstuvwxyz0123456789

例2:把从键盘上输入的若干行文本内容原原本本地存入到d盘xxk目录下的wr2.dat文件中,直到从键盘上输入一空行(即只按下回车键)为止。

分析:此程序的主函数同样包括定义文件流、打开文件、循环接收键盘输入和写文件、关闭文件等操作。

#include<stdio.h>

#include<stdlib.h>

void main(void) {

char str[80];  //保存文本行内容

FILE * f2;

f2=fopen("d:\\xxk\\wr2.dat","w");

if(!f2){printf("打开错!");exit(1);}

printf("输入若干行文本内容:\n");

  while(1) {

    gets(str); //用str保存一行字符

    strcat(str,"\n");

    if(*str=='\n') break;

    fputs(str,f2);

  }

  fclose(f2);

}

最后修改: 2019年09月26日 Thursday 19:15