c语言中文件相关操作
一 .首先介绍一下数据文件的类型:
1.二进制文件(映像文件):在内存中以二进制形式存取。
2.文本文件(ascii文件):以ascii码形式存取的文件。
通俗的讲,在Mac下,你把一个文件丢进记事本里面,如果打开是乱码就是二进制文件。
二.其次是文件类型指针:
简单的说文件类型指针就是存储文件信息的地址。
文件类型指针变量:定义一个指针类型的变量,用来指向存储文件信息的地址。用FILE定义。比如: FILE * fp
三.文件操作步骤(c语言中所有用到的函数都是f开头的。):
1.打开文件 fopen()函数。fp=("文件名",“操作方法”)比如:fp=fopen("/user/wangdi/desktop/haha.txt","w")如下图(在Mac中将文件扔进终端就可以查看其文件路径。
2.读写文件(读取文件中字节。)
向文件写入信息用:
fputc()函数。一次写入一个字节。格式:fputc(数据的ascii码,文件流)。比如 fputc(97,fp).即是将97所对应的ascii码写入到fpz指向的文件中去。也就是把a写进去。如下图,利用循环讲字符串str中的字符串:12345写入文件:
从文件中读取信息:
fgetc(文件指针)。从文件中读取一个字节出来。注意:如果文件中是中文的话一次职能提取一个字节,所以提取出的是乱码。
如果用%d的形式提取出来是-1,表示文件结束,在实际开发中经常这么用:while((ch=fgetc(fp))!=-1){printf("%c",ch)}.如下图:
3.函数中用到的对文件的操作方法举例:
a: append的简写。追加文件:打开文件,光标移动到文件末尾,如果文件不存在则创建文件。
r.: read 的简写。 意思是读取文件:打开文件,如果文件不存在,则返回 null。
w: write 的简写,打开文件,文件存在则截断(清空文件),没有文件就创建文件。
a+,r+,w+等: 就是在原有的功能上加上可读可写的功能。这里不再一一介绍。
2.处理文件:使用函数往流中写数据,或者读取流中的数据。
3.关闭文件:fclose()函数。注意,程序中,每次调用函数都需要打开文件和关闭文件,也就是都需要用到fopen()和pclose()函数。
版权声明:本文为博主原创文章,未经博主允许不得转载。
c语言中文件相关操作的更多相关文章
- (C/C++学习)2.C语言中文件流操作基本函数总结
函数所在头文件:stdio.h 说明:前半部分主要为对各个文件流操作函数的例举,后半部分着重于上机运行分析.文中部分引用自王桂林老师的C/C++课件. 1.FIELE *fopen(const cha ...
- c语言中文件的操作
所谓“文件”是指一组相关数据的有序集合.这个数据集有一个名称,叫做文件名.实际上在前面的各章中我们已经多次使用了文件,例如源程序文件.目标文件.可执行文件.库文件 (头文件)等. 文件通常是驻留在外部 ...
- 理解CSV文件以及ABAP中的相关操作
在很多ABAP开发中,我们使用CSV文件,有时候,关于CSV文件本身的一些问题使人迷惑.它仅仅是一种被逗号分割的文本文档吗? 让我们先来看看接下来可能要处理的几个相关组件的词汇的语义. Separat ...
- Git基本命令 -- 基本工作流程 + 文件相关操作
可以先找一个已经被git管理的项目, 我就使用这个项目吧: https://github.com/solenovex/ID3-Editor 基本工作流程 克隆以后呢, 进入该目录查看一下状态: 然后添 ...
- python文件相关操作
Python文件相关操作 打开文件 打开文件,采用open方法,会将文件的句柄返回,如下: f = open('test_file.txt','r',encoding='utf-8') 在上面的代码中 ...
- c语言中条件编译相关的预编译指令
一. 内容概述 本文主要介绍c语言中条件编译相关的预编译指令,包括#define.#undef.#ifdef.#ifndef.#if.#elif.#else.#endif.defined. 二.条件编 ...
- C语言对文件的操作函数用法详解2
fopen(打开文件) 相关函数 open,fclose 表头文件 #include<stdio.h> 定义函数 FILE * fopen(const char * path,const ...
- C语言对文件的操作函数用法详解1
在ANSIC中,对文件的操作分为两种方式,即: 流式文件操作 I/O文件操作 一.流式文件操作 这种方式的文件操作有一个重要的结构FILE,FILE在stdio.h中定义如下: typedef str ...
- C语言中文件定位函数总结
C语言中文件定位函数主要是:fseek, ftell, fsetpos, fgetpos. 先来讲前两个函数,这是最基本的定位函数: fseek函数:能把文件指针移动到文件任何位置,其原型是:int ...
随机推荐
- FileZilla 425 Can't open data connection
FileZilla 425 Can't open data connection WIN 2008 SERVER+FileZilla FTP Server,FTP端口:2013 防火墙中已允许FTP ...
- Constructing Roads
Constructing Roads Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...
- 算法 python实现(三) 快速排序
算法学起来真费劲啊,智商只够捉只鸡的.昨晚没看明白就没电了,过两天要考虑偷电了... 今天看看快速排序,有一个博客写的很好,通俗生动形象,适合我这样的算法大白菜.推荐一下 http://www.cnb ...
- 常用的Git命令
我的常用的Git命令 Git仓库配置常用 1. clone 克隆一份远程的Git版本库 git clone git://github.com/someone/some_project.git some ...
- HTML5 Canvas核心技术—图形、动画与游戏开发.pdf3
路径与子路径 在某一时刻,canvas之中只能有一条路径存在,Canvas规范称之为“当前路径”(current path),这条路径却可以包含很多子路径(subpath),子路径是由两个或者更多点组 ...
- hdoj 4738 Caocao's Bridges【双连通分量求桥】
Caocao's Bridges Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) ...
- hdoj 2074 叠筐
叠筐 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...
- noip 2015 提高组
算是填个坑吧 , QwQ Day 1 第一题很水,就是考代码能力 ,直接贴代码. #include <iostream> #include <cstdlib> #include ...
- JavaScript apply函数小案例
//回调函数1 function callback(a,b,c) { alert(a+b+c); } //回调函数2 function callback2(a,b) { alert(a+b); } / ...
- Cookie案例分析
一.案例- 显示用户上次访问的时间 当用户第一次访问该页面的时候提示:你好,你是第一次访问本页面,当前时间为:2016-11-3 22:10:30 第n次访问该页面时:欢迎回来,你上次访问的时间是:2 ...