//写文件两种方式(文本文件和二进制文件)

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h> int readtxt(char *path){//传入文件地址
int ERRO_MSG = ;
if (path==NULL)
{
ERRO_MSG = ;
printf("文件路径不可以为空!path==NULL erro msg:%d\n ", ERRO_MSG);
return ERRO_MSG;
}
//定义文件指针(防止野指针)
FILE *pf=NULL;
//以文本方式读取使用r;以二进制方式读取使用rb
pf = fopen(path, "rb");
if (pf==NULL)
{
ERRO_MSG = ;
printf("文件打开失败 !文件路径是 %s ,文件打开方式是rb pf==NULL erro msg:%d\n", path, ERRO_MSG);
return ERRO_MSG;
}
//定义一个字符
char ch;
int index = ;
fread(&ch, , , pf);
//fread(缓冲数组地址,数组元素大小1个字节,每次读取1个元素,文件指针)
while (!feof(pf)){//没有读取到文件末尾就继续
printf("%c====%d\n", ch,index);
fread(&ch, , , pf);
index++;
}
//关闭文件指针
if (pf != NULL)
{
fclose(pf);
}
return ERRO_MSG;
} void main(){
char str[] = "我自狂刀向天笑,去留肝胆两昆仑!\n世人皆醉我独醒";
char strt2[] = ""; //定义文本文件指针
FILE *pfw=NULL;
//定义二进制文件指针
FILE *pfb=NULL;
int num = ;
//写一个文本文件
char pathw[] = "E:/Look/w.txt";
char pathb[] = "E:/Look/b.txt";
//一:文本模式
//打开文件
//w--写文件,如果没有,系统会创建一个,但是r--读文件,如果没有,文件指针就是NULL
pfw = fopen(pathw, "w");
if (pfw==NULL)
{
//文件打开失败
printf("文件打开失败\n");
return;
}
//文件打开成功
//将字符串写入txt中
//fwrite(数组首地址,数组元素大小1个字节,一共有50个元素,文件指针)
num = fwrite(str, , , pfw);
if (num != )
{
printf("文件读写出现IO错误 erro msg:%d\n");
}
if (pfw != NULL)
{
fclose(pfw);
} //二:二进制模式
//打开文件
pfb = fopen(pathb, "wb");//区别,这是使用wb
if (pfb==NULL)
{
//文件打开失败
printf("文件打开失败\n");
return;
}
//文件打开成功
//将字符串写入txt中
num = fwrite(strt2, , , pfb);
//关闭文件指针
if (pfb != NULL)
{
fclose(pfb);
}
//fwrite(数组首地址,数组元素大小1个字节,一共有50个元素,文件指针)
printf("\n打印出文件\n");
readtxt(pathb); system("pause");
}

C语言 文件操作1--二进制文件与文本文件的更多相关文章

  1. C 语言文件操作

    C 语言文件操作 1. 数据流:     程序与数据的交互以流的形式进行.fopen 即打开数据流,fclose 即刷新数据流.     所谓数据流,是一种抽象,表示这段数据像流一样,需要逐步接收,不 ...

  2. C语言文件操作解析(五)之EOF解析(转载)

      C语言文件操作解析(五)之EOF解析 在C语言中,有个符号大家都应该很熟悉,那就是EOF(End of File),即文件结束符.但是很多时候对这个理解并不是很清楚,导致在写代码的时候经常出错,特 ...

  3. 【转】C语言文件操作解析(三)

    原文网址:http://www.cnblogs.com/dolphin0520/archive/2011/10/07/2200454.html C语言文件操作解析(三) 在前面已经讨论了文件打开操作, ...

  4. C语言文件操作函数

    C语言文件操作函数大全 clearerr(清除文件流的错误旗标) 相关函数 feof表头文件 #include<stdio.h> 定义函数 void clearerr(FILE * str ...

  5. C语言文件操作函数大全(超详细)

    C语言文件操作函数大全(超详细) 作者: 字体:[增加 减小] 类型:转载 本篇文章是对C语言中的文件操作函数进行了详细的总结分析,需要的朋友参考下   fopen(打开文件)相关函数 open,fc ...

  6. go语言文件操作,这期资料比较详细( 欢迎加入go语言群: 218160862 )

    go语言文件操作,这期资料比较详细 欢迎加入go语言群: go语言深圳群 golang深圳 218160862 点击加入 文件操作 func Open(name string) (file *File ...

  7. C语言文件操作

    C语言文件操作,以下以基本的例子和说明来展开怎么通过C语言来进行文件操作. 操作文件,我们得需要知道什么?当然是路径和文件名. 首先我需要知道我操作的文件在哪里,叫什么名字.在C语言中还存在一个打开方 ...

  8. C语言文件操作 FILE结构体

    内存中的数据都是暂时的,当程序结束时,它们都将丢失.为了永久性的保存大量的数据,C语言提供了对文件的操作. 1.文件和流 C将每个文件简单地作为顺序字节流(如下图).每个文件用文件结束符结束,或者在特 ...

  9. C语言文件操作相关函数

    在实际应用中,我们往往需要对文件进行操作,下面我将介绍C语言的一些关于操作文件的函数. 一.计算机文件 计算机文件是以计算机硬盘为载体存储在计算机上的信息集合,是存储在某种长期储存设备上的一段数据流. ...

  10. C语言文件操作详解

    C语言中没有输入输出语句,所有的输入输出功能都用 ANSI C提供的一组标准库函数来实现.文件操作标准库函数有: 文件的打开操作 fopen 打开一个文件 文件的关闭操作 fclose 关闭一个文件 ...

随机推荐

  1. 安卓问题集-Installation error: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED

    错误出现原因: 1.没有 AndroidManifest.xml file文件(出现几率较小) 2. 是你在外面修改了包名而在 AndroidManifest.xml file.文件中没有同步过去导致 ...

  2. iOS开发中的一些细节BUG的解决

    这篇博客里我将不定期更新自己遇到的一些细节上的BUG,并提供解决方法,遇到同样问题的童鞋们可以参考交流一下. 1.关于tableView的tableHeaderView 请注意,我这里说的是table ...

  3. iOS开发网络篇—搭建本地服务器(待整理)

      一.简单说明 说明:提前下载好相关软件,且安装目录最好安装在全英文路径下.如果路径有中文名,那么可能会出现一些莫名其妙的问题. 提示:提前准备好的软件 apache-tomcat-6.0.41.t ...

  4. IOS之Foundation--plist简说

    将集合元素通过代码写入plist文件中 主要用来一览代码写入plist文件,在以后的工作中,可能会有字典一样的集合元素,需要你转为plist文件,那么你是选择手动输入plist文件中呢,还是通过以下代 ...

  5. Node.js(1)-helloworld

    1.Node.Js 环境准备 下载地址: node.js http://nodejs.org/download/   vs.net集成开发环境: Node.js Tools for Visual St ...

  6. Effective Java 55 Optimize judiciously

    Principle Strive to write good programs rather than fast ones. Strive to avoid design decisions that ...

  7. Ubuntu文本编辑时vi和nano命令的区别(建议使用nano)

    vi是Unix世界里极为普遍的全荧幕文书编辑器,几乎可以说任何一台Unix机器都会提供这套软体就像windows的记事本一样. 键入 vi /etc/hosts 进入vi界面,把光标移动到文件未尾.按 ...

  8. wait方法和sleep方法的区别

    一.概念.原理.区别 Java中的多线程是一种抢占式的机制而不是分时机制.线程主要有以下几种状态:可运行,运行,阻塞,死亡.抢占式机制指的是有多个线程处于可运行状态,但是只有一个线程在运行.      ...

  9. linux安装pylab

    在linux下就是一句话 sudo apt-get install python-matplotlib 该工具包含了pylab, numpy,scipy和matplotlib四个工具包 对matplo ...

  10. openstack-networking-neutron(四)--iptables

    Filter表:过滤数据包,默认表. (1)INPUT   链:过滤所有目标地址是本机的数据包(对进入本机数据包的过滤) (2)OUTPUT 链:过滤所有本机产生的数据包(对源地址得数据包的过滤) ( ...