按字符对文件读写

fopen(char *,r+):打开文件

fputc(“c”,FILE *fp):把字符写到fp文件中

tempc = fgetc(FILE *fp):从fp中获取一个字符串

feof(FILE *fp):若fp被读取完,则该函数返回1

fclose(FILE *fp):关闭文件

#define _CRT_SECURE_NO_WARNINGS

#include

#include

#include

void main01_fputc()

{

int i = 0;

FILE *fp = NULL;

//char *filename = "c:\\1.txt";

char *filename2 = "c:/2.txt"; // 统一的用45度

char a[27]= "abcdefghijklmn";

fp = fopen(filename2, "r+");

if (fp == NULL)

{

printf("func fopen() err:%d \n");

return;

}

printf("打开成功\n");

for (i=0; i

{

fputc(a[i], fp);

}

fclose(fp);

return ;

}

void main02_fgetc()

{

int i = 0;

FILE *fp = NULL;

//char *filename = "c:\\1.txt";

char *filename2 = "c:/2.txt"; // 统一的用45度

char a[27]= "abcdefghijklmn";

fp = fopen(filename2, "r+"); //读和写方式

if (fp == NULL)

{

printf("func fopen() err:%d \n");

return;

}

printf("打开成功\n");

while (!feof(fp))

{

char tempc = fgetc(fp);

printf("%c", tempc);

}

if (fp != NULL)

{

fclose(fp);

}

return ;

}

void main11()

{

//main01_fputc();

main02_fgetc();

printf("hello...\n");

system("pause");

return ;

}

按行对文件读写

fopen(char *,r+):打开文件

fputs(“cffdfd”,FILE *fp):把字符串写到fp文件中

char *p = fgets(buf, 1024, fp):从fp中读取一行,放到buf中,且buf的首地址返回到p

feof(FILE *fp):若fp被读取完,则该函数返回1

fclose(FILE *fp):关闭文件

#define _CRT_SECURE_NO_WARNINGS

#include

#include

#include

void main21_fputs()

{

int i = 0;

FILE *fp = NULL;

//char *filename = "c:\\1.txt";

char *filename2 = "c:/22.txt"; // 统一的用45度

char a[27]= "abcdefghijklmn";

//fp = fopen(filename2, "r+"); //读写的方式 打开文件 如果文件不存在 则报错

fp = fopen(filename2, "w+"); //读写的方式 打开文件 如果文件不存在 则报错

if (fp == NULL)

{

printf("func fopen() err:%d \n");

return;

}

printf("打开成功\n");

/*

for (i=0; i

{

fputc(a[i], fp);

}

*/

fputs(a, fp);

fclose(fp);

return ;

}

/*

char * myfgets(char *myp, int max, FILE *fp)

{

strcpy(myp, "aaaaaa");

return myp;

}

*/

void main22_fgets()

{

int i = 0;

FILE *fp = NULL;

//char *filename = "c:\\1.txt";

char *filename2 = "c:/22.txt"; // 统一的用45度

//char a[27]= "abcdefghijklmn";

char buf[1024];

fp = fopen(filename2, "r+"); //读和写方式

if (fp == NULL)

{

printf("func fopen() err:%d \n");

return;

}

printf("打开成功\n");

//1 //C 函数库 会 一行一行的copy数据 到buf指针所指的内存空间中 并且变成C风格的字符串

//2 把\n也copy到我们的buf中

//3 内存打包 (把内存首地址 + 内存的长度)

while (!feof(fp))

{

//_Check_return_opt_ _CRTIMP char * __cdecl fgets(_Out_z_cap_(_MaxCount) char * _Buf, _In_ int _MaxCount, _Inout_ FILE * _File);

char *p = fgets(buf, 1024, fp); //C 函数库 会 一行一行的copy数据 到buf指针所指的内存空间中 并且变成C风格的字符串

if (p == NULL)

{

goto End;

}

printf("%s", buf);

}

End:

if (fp != NULL)

{

fclose(fp);

}

return ;

}

void main2211()

{

//main21_fputs();

main22_fgets();

printf("hello...\n");

system("pause");

return ;

}

按块对文件读写

fopen(char ,r+):打开文件

myN = fwrite( char &tArray[i],sizeof(Teacher) , 1, fp);

myN = fread(&tArray[i], sizeof(Teacher), 1, fp);

//myN表示写入成功的次数

//参数1:写入buf的地址

//参数2:写入buf的长度

//参数3:按几次写入

//参数4:写入的文件

feof(FILE *fp):若fp被读取完,则该函数返回1

fclose(FILE *fp):关闭文件

#define _CRT_SECURE_NO_WARNINGS

#include

#include

#include

//直接把内存数据 写入到 文件中

typedef struct Teacher

{

char name[64];

int age ;

}Teacher;

void main_fwrite()

{

int i = 0;

FILE *fp = NULL;

char *fileName = "c:/3.data";

Teacher tArray[3];

int myN = 0;

for (i=0; i<3; i++)

{

sprintf(tArray[i].name, "%d%d%d", i+1, i+1, i+1);

tArray[i].age = i + 31;

}

fp = fopen(fileName, "wb");

if (fp == NULL)

{

printf("建立文件失败\n");

return ;

}

for (i=0; i<3; i++)

{

//_Check_return_opt_ _CRTIMP size_t __cdecl

// fwrite(_In_count_x_(_Size*_Count) const void * _Str, _In_ size_t _Size, _In_ size_t _Count, _Inout_ FILE * _File);

//函数参数

//_Str : 从内存块的开始

//_Size //内存打包技术

//_Count 写多少次

//_File : 写入到 文件指针 所指向的文件中

//函数的返回值

myN = fwrite( &tArray[i],sizeof(Teacher) , 1, fp);

//myN 判断 有没有写满 磁盘

}

if (fp != NULL)

{

fclose(fp);

}

}

void main_fread()

{

int i = 0;

FILE *fp = NULL;

char *fileName = "c:/3.data";

Teacher tArray[3];

int myN = 0;

fp = fopen(fileName, "r+b");

if (fp == NULL)

{

printf("建立文件失败\n");

return ;

}

for (i=0; i<3; i++)

{

//_Check_return_opt_ _CRTIMP size_t __cdecl

// fread(_Out_bytecap_x_(_ElementSize*_Count) void * _DstBuf, _In_ size_t _ElementSize, _In_ size_t _Count, _Inout_ FILE * _File);

myN = fread(&tArray[i], sizeof(Teacher), 1, fp);

//函数的返回值

//myN = fwrite( &tArray[i],sizeof(Teacher) , 1, fp);

//myN 判断 有没有写满 磁盘

}

for (i=0; i<3; i++)

{

//sprintf(tArray[i].name, "%d%d%d", i+1, i+1, i+1);

//tArray[i].age = i + 31;

printf("name:%s, age:%d \n", tArray[i].name, tArray[i].age);

}

if (fp != NULL)

{

fclose(fp);

}

}

void main()

{

//main_fwrite();

main_fread();

printf("hello...\n");

system("pause");

return ;

}

c语言把字符串写入文件,c语言文件读写 | 按字符,按行,按块相关推荐

  1. c语言将字符串写入文件

    代码如下: FILE *fp; char ch;         if((fp=fopen("file.txt","a+"))==NULL)         { ...

  2. C语言去掉字符串首尾空格,C语言实现去除字符串首尾空格

    C语言实现去除字符串首尾空格 2019年09月28日 | 萬仟网IT编程 | 我要评论 /* C语言去除字符串首尾空格,trim()函数实现 https://blog.csdn.net/u013022 ...

  3. c语言中字符串型文件名,C语言中变量名的命名规则

    1.严格采用阶梯层次组织程序代码: 各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格,括号位于下一行.要求相匹配的大括号在同一列,对继行则要求再缩进4格.例如: 2.提示信息字符串的位置 在程序 ...

  4. c语言ip字符串转为数组,C语言 ip地址转换为单个数字

    今天遇到一个面试测试题,如下 请写一段代码,可以将输入为"0.0.0.0"-"255.255.255.255"的字符串转换为int型整数数组. 输入:" ...

  5. php语言查找字符串是否存在,PHP语言查找字符串是否存在的方法

    这里整理了PHP语言查找字符串是否存在的方法,如果你想了解PHP语言查找字符串是否存在的方法,可以查看以下PHP语言查找字符串是否存在的方法详解. PHP语言查找字符串是否存在的方法一:采用in_ar ...

  6. 易语言高级表格写入MYSQL_易语言数据库与高级表格思路分析.doc

    易语言数据库与高级表格思路分析 篇一:易语言数据库操作指南 易语言数据库操作指南 一.易语言操作Access数据库 前面我们已经对比分析过易语言所支持的几种常见数据库,在这几种数据库中,我们先来学习一 ...

  7. C语言用字符串sex储存,C语言必须要记住的经典程序

    原标题:C语言必须要记住的经典程序 1./*判断101-200之间有多少个素数,并输出所有素数及素数的个数. 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除, 则表明此 ...

  8. c语言找字符串的位置,C语言开发中查找字符串位置的方法

    C语言开发中,我们可以使用strstr函数找到字符串,程序员在这个时候要怎么操作呢?别着急,今天是爱站技术频道小编为大家介绍的C语言开发中查找字符串位置的方法,一起参考看看吧! C语言strchr() ...

  9. c语言相邻字符串字面量,C语言预处理#运算符的细节

    #运算符将宏的一个参数转换为字符串字面量,它仅允许出现在带参数的宏的替换列表中. 例如:使用PRINT_INT宏作为一个快捷的方法来整形变量或者表达式的值,#运算符可以使PRINT_INT为每个输出的 ...

最新文章

  1. 微信小程序发送模板消息,php发送模板消息
  2. 吴恩达Deeplearning.ai国庆节上新:生成对抗网络(GAN)专项课程
  3. Leetcode每日一题:86.partition-list(分割列表)
  4. OkHttp3源码详解(五) okhttp连接池复用机制
  5. python 爬虫性能_python-爬虫性能相关
  6. Python入门深度学习完整指南
  7. Linux教程+操作系统教程
  8. 路由交换的一些常见知识点总结
  9. 【Matlab绘图】plot3函数绘制三维点或线图
  10. php yar swoole 比较,Hprose 和 Yar 的性能比较
  11. 渗透测试国内外研究_《混凝土与水泥制品》2020第8期——“混凝土研究”栏目...
  12. Python使用rawpy获取相机图像的原始RAW数据
  13. 高数:第四章(同济大学第七版)
  14. Julia(一)--Julia变量
  15. 转 java中的session
  16. liunx下rdesktop无法使用,安装remmina
  17. 离散数学 第十六章 环和域
  18. python发送文件到指定的邮箱_怎么用qq邮箱发文件-用python发送139邮箱电子邮件和短信通知,让你不再错过重要信息...
  19. pycharm安装python_pycharm如何安装numpy
  20. android分享到微博客户端,开发一个Android微博客户端+Web后台

热门文章

  1. origin对独立曲线进行操作
  2. matlab使用tic 和 toc记录程序执行时间
  3. 准确实用,7个优秀的开源中文分词库推荐
  4. 解释一下全连接层CNN中全连接层是什么样的
  5. CustomValidator,客户端,服务器端验证
  6. ASP.NET企业开发框架IsLine FrameWork系列之二--命名空间与契约
  7. python中用来回溯异常的模块_Python_10-异常处理
  8. Matlab--m代码转C与C++代码)1(简单示例涉及到函数调用)
  9. Opencv--仿射变换+投射变换+单应性矩阵
  10. Python range() 函数用法