`

C文件操作--示例代码存放

阅读更多
from http://blog.csdn.net/lxf464384/archive/2007/10/27/1848714.aspx

Example

/* FOPEN.C: This program opens files named "data"
 * and "data2".It  uses fclose to close "data" and
 * _fcloseall to close all remaining files.
 */

#include <stdio.h>

FILE *stream, *stream2;

void main( void )
{
   int numclosed;

   /* Open for read (will fail if file "data" does not exist) */
   if( (stream  = fopen( "data", "r" )) == NULL )
      printf( "The file 'data' was not opened\n" );
   else
      printf( "The file 'data' was opened\n" );

   /* Open for write */
   if( (stream2 = fopen( "data2", "w+" )) == NULL )
      printf( "The file 'data2' was not opened\n" );
   else
      printf( "The file 'data2' was opened\n" );

   /* Close stream */
   if( fclose( stream ) )
      printf( "The file 'data' was not closed\n" );

   /* All other files are closed: */
   numclosed = _fcloseall( );
   printf( "Number of files closed by _fcloseall: %u\n", numclosed );
}
Output

The file 'data' was opened
The file 'data2' was opened
Number of files closed by _fcloseall: 1


int fseek( FILE *stream, long offset, int origin );
Remarks

The fseek function moves the file pointer (if any) associated with stream to a new location that is offset bytes from origin. The next operation on the stream takes place at the new location. On a stream open for update, the next operation can be either a read or a write. The argument origin must be one of the following constants, defined in Stdio.h: 

SEEK_CUR 
Current position of file pointer 
SEEK_END 
End of file 
SEEK_SET 
Beginning of file 

Example

/* FSEEK.C: This program opens the file FSEEK.OUT and
 * moves the pointer to the file's beginning.
 */

#include <stdio.h>

void main( void )
{
   FILE *stream;
   char line[81];
   int  result;

   stream = fopen( "fseek.out", "w+" );
   if( stream == NULL )
      printf( "The file fseek.out was not opened\n" );
   else
   {
      fprintf( stream, "The fseek begins here: "
                       "This is the file 'fseek.out'.\n" );
      result = fseek( stream, 23L, SEEK_SET);
      if( result )
         printf( "Fseek failed" );
      else
      {
         printf( "File pointer is set to middle of first line.\n" );
         fgets( line, 80, stream );
         printf( "%s", line );

      }
      fclose( stream );
   }
}
Output

File pointer is set to middle of first line.
This is the file 'fseek.out'.


/*
*一个c语言文件操作例子代码参考
*
*文件使用方式        意 义
*“rt”      只读打开一个文本文件,只允许读数据
*“wt”      只写打开或建立一个文本文件,只允许写数据
*“at”      追加打开一个文本文件,并在文件末尾写数据
*“rb”      只读打开一个二进制文件,只允许读数据
*“wb”       只写打开或建立一个二进制文件,只允许写数据
*“ab”       追加打开一个二进制文件,并在文件末尾写数据
*“rt+”      读写打开一个文本文件,允许读和写
*“wt+”      读写打开或建立一个文本文件,允许读写
*“at+”      读写打开一个文本文件,允许读,或在文件末追加数 据
*“rb+”      读写打开一个二进制文件,允许读和写
*“wb+”      读写打开或建立一个二进制文件,允许读和写
*“ab+”      读写打开一个二进制文件,允许读,或在文件末追加数据
*
·字符读写函数 :fgetc和fputc
·字符串读写函数:fgets和fputs
·数据块读写函数:freed和fwrite
·格式化读写函数:fscanf和fprinf
对于文件使用方式有以下几点说明:
1. 文件使用方式由r,w,a,t,b,+六个字符拼成,各字符的含义是:
r(read): 读
w(write): 写
a(append): 追加
t(text): 文本文件,可省略不写
b(banary): 二进制文件
*/

int main()
{
	FILE *fp;
	char ch;
	if((fp=fopen("e10_1.c","rt"))==NULL)
	{
		printf("Cannot open file strike any key exit!");
		exit(1);
	}
	ch=fgetc(fp);
	while (ch!=EOF)
	{
		putchar(ch);
		ch=fgetc(fp);
	}
	fclose(fp);
	return 0;
}



/*
*二、写字符函数fputc
 fputc函数的功能是把一个字符写入指定的文件中,函数调用的
  形式为: fputc(字符量,文件指针); 其中,待写入的字符量可以是字符常量或变量,
  例如:fputc('a',fp);其意义是把字符a写入fp所指向的文件中。
  对于fputc函数的使用也要说明几点:
1. 被写入的文件可以用、写、读写,追加方式打开,
    用写或读写方式打开一个已存在的文件时将清除原有的文件内容,
	写入字符从文件首开始。如需保留原有文件内容,希望写入的字符以文件末开始存放,
	必须以追加方式打开文件。被写入的文件若不存在,则创建该文件。
2. 每写入一个字符,文件内部位置指针向后移动一个字节。
3. fputc函数有一个返回值,如写入成功则返回写入的字符, 否则返回一个EOF。可用此来判断写入是否成功。
[例10.2]从键盘输入一行字符,写入一个文件, 再把该文件内容读出显示在屏幕上。
*/

int main()
{
	FILE *fp;
	char ch;
	if((fp=fopen("e10_1.c","wt+"))==NULL)
	{
		printf("Cannot open file strike any key exit!");
		exit(1);
	}

	printf("input a string:\n");
	ch=getchar();
	while (ch!='\n')
	{
		fputc(ch,fp);
		ch=getchar();
	}
	rewind(fp);
	ch=fgetc(fp);
	while(ch!=EOF)
	{
		putchar(ch);
		ch=fgetc(fp);
	}
	printf("\n");
	fclose(fp);
	return 0;
}
1
3
分享到:
评论

相关推荐

    c语言文本文件读写操作示例代码

    本篇文章将基于提供的示例代码,深入讲解如何使用C语言的标准库来实现文本文件的基本读写操作。具体包括`fopen`, `fgets`, `fprintf`以及`fclose`等函数的使用方法。 #### 二、核心知识点 ##### 1. 文件打开与关闭...

    数据结构(C语言版)-严蔚敏-源代码

    在严蔚敏教授的书中,每种数据结构都有详细的理论讲解和对应的C语言实现,包括文件DS中的源代码,读者可以通过阅读和运行这些代码来加深理解。例如,链表的插入、删除操作,二叉树的遍历算法,以及排序算法的时间...

    什么是c语言文件读写操作代码以及学习c语言文件读写操作代码的意义

    ### 什么是C语言文件读写操作代码 C语言作为一种广泛使用的编程语言,其文件读写功能对于实际开发工作至关重要。文件读写操作是指程序能够从文件中读取数据或将数据写入文件的过程。这种能力使得C语言程序不仅能够...

    C语言文件操作函数大全

    ### C语言文件操作概述 #### 1. 文件的存取方式 在C语言中,文件的存取有两种基本方式: - **顺序存取**:按照文件中的记录顺序依次读取或写入。 - **直接存取**(随机存取):可以直接定位到文件中的任意位置进行...

    c语言文件的读写操作

    ### C语言文件的读写操作 #### 知识点概览 本文将详细介绍C语言中文件的基本读写操作。在C语言中,文件是通过`&lt;stdio.h&gt;`库中的`FILE`结构体来处理的。文章中的代码示例展示了如何打开文件、向文件中写入数据以及...

    c语言文件读写操作代码.txt

    示例代码中首先声明了一个FILE指针fp,并定义了一个字符数组text用于存放要写入文件的字符串。使用fopen函数以写入模式("w")打开名为example.txt的文件。如果文件打开失败,使用perror函数输出错误信息并返回错误...

    c语言文件读写操作代码

    以下是一个简单的C语言文件读写示例代码: ```c #include int main() { FILE *fp; char filename[] = "test.txt"; char str[100]; // 打开文件 fp = fopen(filename, "w"); if (fp == NULL) { printf(...

    c语言文件读写操作代码.docx

    以下是几个关键的C语言文件读写操作知识点: 1. 文件打开(fopen函数) 文件打开是文件操作的第一步,通过fopen函数完成。fopen需要两个参数:文件名和文件打开模式。打开模式指定文件用于读取("r")、写入("w...

    Linux下C语言编程--线程操作

    // 示例代码仅做演示用途,实际使用时需考虑更多的错误处理和优化 // 此处省略了文件打开等细节 struct copy_file file_data; file_data.infile = open("source.txt", O_RDONLY); file_data.outfile = open(...

    单片机C语言实例--171-外部中断的使用.zip

    首先,`外部中断的使用.c`是主要的源代码文件,其中包含了实现外部中断功能的C语言代码。通常,这个文件会包含对中断向量的设置、中断使能和中断服务函数的定义。中断向量是单片机内存中预设的地址,用于存放中断...

    C语言文件读写操作.docx

    ### C语言文件读写操作详解 #### 一、概述 在C语言中,文件操作是一项基本且重要的功能,主要用于处理程序外部的数据存储和检索。本文将详细介绍C语言中文件读写的基本概念、文件类型、存取方式以及常用的标准...

    hexo-theme-butterfly-爱心代码c语言

    在代码示例中,“爱心代码”可能是指用C语言编写的能够输出爱心图案的程序代码,这种代码在教育或娱乐领域中十分常见,能够帮助初学者通过实践理解循环、条件判断等基础编程概念。 结合标题和描述,“hexo-theme-...

    ajax经典示例代码

    database 目录存放数据库SQL文件 java 目录存放java源文件 webapp 目录存放实例页面及JSP源文件 -------------- 数据库安装说明 -------------- 了解MySQL的用户可以直接使用自己熟悉的方式创建名为ajax的数据库,...

    C语言资料大全---1.0.rar

    《C语言资料大全1.0》是一个集合了丰富的C语言学习资源的压缩包,其中包含了一个名...《C语言资料大全1.0》的CHM文档很可能是包含详细教程、示例代码、习题解答等内容的综合资源,对于学习和提升C语言技能非常有帮助。

    C语言文件读写操作指南

    ### C语言文件读写操作指南 #### 文件的基本概念 在计算机科学中,**文件**被定义为一组有序的数据集合,通常具有一个特定的名称——即文件名。在编程过程中,尤其是使用C语言时,文件的概念至关重要。文件可以...

    基于C语言的WA-IOT-EDGE-SDK物联网边缘计算平台设计源码

    "samples"目录可能包含了示例代码或项目,以帮助开发者理解如何使用SDK。"configs"目录可能存放了配置文件,它们是运行和配置边缘计算节点的重要组成部分。"source"目录显然是存放源代码的主要位置,而"python-SDK...

    C语言 + 单片机-内存分布详解

    下面是一段示例代码,用于演示如何在STM32上使用不同内存区域: ```c #include #include #include // 全局区 int q1; // 未初始化全局变量 static int q2 = 0; // 初始化为0的静态变量 void main() { int q3;...

Global site tag (gtag.js) - Google Analytics