《C语言程序设计教程(第3版)》课件第12章 文件.pptx
文本预览下载声明
;第12章:文 件 ;学习目标 ;12.1 文件的基本概念;12.2 文件的类别001100100011011012.3 文件操作概述;文件处理方法;12.4 文件指针;文件类型指针
指针变量说明: FILE *fp;
用法:
文件打开时,系统自动建立文件结构体,并把指向它的指针返回来,程序通过这个指针获得文件信息,访问文件
文件关闭后,它的文件结构体被释放;12.5 文件的打开、读写和关闭 ;打开文件方式mode由两类字符构成:
一类字符表示打开文件的类型
t-----表示文本文件(text,默认方式)
b----表示二进制文件(binary)
另一类字符是操作类型
r----表示从文件中读取数据(read)
w---表示向文件写入数据(write)
a----表示在文件尾追加数据(append)
+----表示文件可读可写 ; 关闭文件fclose;2、文件的读写 ; fputc;#include stdio.h
#include stdlib.h
int main (int argc, char *argv[ ])
{
FILE *fp1,*fp2;
char ch;
if (argc != 2) //参数个数不对
{
printf (the number of arguments not correct\n\n);
printf (Usage: 可执行文件名 filename \n);
exit (0);
}
if ((fp1 = fopen(argv[1],wt)) == NULL) //打开文件失败
{
printf (can not open this file\n);
exit (0);
} ;#include stdio.h
#include stdlib.h
int main (int argc, char *argv[ ])
{
//input:源文件指针, output:目标文件指针
FILE *input, *output;
if (argc != 3) //参数个数不对
{
printf (the number of arguments not correct\n);
printf (\n Usage: 可执行文件名 source-file dest-file);
exit (0);
}
//打开源文件失败
if ((input = fopen(argv[1], r)) == NULL)
{
printf (can not open source file\n);
exit (0);
} ;文件读写位置指针: ;(2) 字符串读写函数:fgets 和 fputs;#include stdio.h
#include stdlib.h
int main ( )
{
FILE *fp1, *fp2;
char str[ ] = 123456789;
//创建文本文件wang.txt
fp1 = fopen (wang.txt, w);
if (fp1 = = NULL) //创建文件失败
{
printf (can not open file: wang.txt\n);
exit (0);
}
//将字符串写入文件
fputs (str, fp1);
//写入第一行文本的换行符和下一行文本
fputs (\nabcd, fp1);
fclose (fp1); //关闭文件; fp2 = fopen (wang.txt, rt); //以只读方式打开wang.txt文件
fgets (str, 8, fp2); //读取字符串,最大长度是7,将是1234567
printf (%s\n, str);
fgets (str, 8, fp2); //读取字符串,最大长度是7,实际上将是89\n
printf (%s\n, str);
fgets (str, 8, fp2); //读取字符串,最大长度是7,实际上将是abcd
printf (%s\n, str);
fclose (fp2); //关闭打开的文件
return 0;
};【例4】利用字符串读写函数实现文件拷贝。;(3) 数据块读写函数:fread 和 fwrite;
显示全部