codeblock图形界面编程(十)文件操作

article/2025/9/19 14:23:27

目录

  • codeblock图形界面编程(十)文件操作
    • C语言的文件管理
      • 文件指针
      • 文件打开
    • 文件关闭
      • 文件读
      • 文件写
    • 图形界面的文件操作管理
      • 配置libcomdlg32.a库
      • 系统功能的实现

codeblock图形界面编程(十)文件操作

打开我们的计算机,无论是花花绿绿的图片、动感激烈的视频或者是各种各样的资料、数据,要想在电脑中存储、复用,无不是以文件形式保存在计算机硬盘中。所以,应用程序设计中,文件操作是必不可少的,它可以让我们把目标内容、数据存储到计算机硬盘上,以供下次使用或者用于交流、传输或再加工等等,这样,即使我们的app停止了运行,或者在大型协作任务中退出了,数据仍然保留,下次我们可以再次从电脑中读取数据内容,继续工作,通过这些文件操作,使得我们实现了数据的持久化,信息的交流、存储或再加工就有了基础。

C语言的文件管理

文件指针

C编译器中,每当打开一个文件的时候,系统会根据文件的情况自动创建一个FILE结构的变量,通过一个FILE的指针来维护这个FILE结构的变量,实例如下:

	FILE* pf;//文件指针变量

文件打开

pf建立了指针和文件的联系后,使用fopen函数来打开文件,fopen函数原型:

	//打开文件函数:FILE *fopen( const char *filename, const char *mode );

在C语言的文件操作语法中,打开文件文件有以下12种模式,如下图:

在这里插入图片描述

文件关闭

利用fclose来关闭文件。和fclose函数原型为:

	//关闭文件函数:int fclose( FILE *stream );

文件读

我们使用文件的目的无外乎对文件的读和写,常用的函数有:

  1. fgetc函数,函数原型:

     int fgetc( FILE *stream );
    

该函数作用是从文件流或者标准输入流stdin(键盘)中读取一个字符。正常读取返回该字符的ASCII码。读取错误或者读取结束则会返回EOF,EOF是-1,因此其是用int类型返回值!

2 fgets() 获取一行,其原型定义为:

	char *fgets(char *s, int size, FILE *stream);

fgets() 有三个参数:

       FILE *stream  文件指针int size    读取大小char *s,  读出得数据存储指针,指向存储缓冲区,可以是字符数组名,也可以是指向字符数组的字符指针变量名

其功能是从 stream 流中读取 size 个字符存储到字符指针变量 s 所指向的内存空间。它的返回值是一个指针,指向字符串中第一个字符的地址。

文件写

和文件读对应,常用的文件写函数有:

  1. fputc()函数用于将单个字符写入文件。它将一个字符输出到流。fputc()函数原型定义为:

     int fputc(int c, FILE *stream)
    
  2. fputs() 函数也是用来显示字符串的,它的原型是:

     int fputs(const char *s, FILE *stream);
    

两个参数:
s 代表要输出的字符串的首地址,可以是字符数组名或字符指针变量名。
stream 表示输出流,可以是标准输出流 stdout,也可以是文件流

图形界面的文件操作管理

图形界面具有界面友好,直观和容易使用的特点,用户往往通过鼠标和图形窗口的方式来选择文件进行操作,例如windows的explorer,界面如下:

在这里插入图片描述怎么实现昵?下面以codeblock20为例介绍

配置libcomdlg32.a库

在 Code::Blocks 20.03 中,要使用FileDialog(szFile))来图形化的打开文件对话框,需要comdlg32.a库的支持,配置方法如下:
1.选择Settings -> compiler

在这里插入图片描述2.选择linker settings,选择add -> 浏览, D:\Program Files\CodeBlocks\MinGW\x86_64-w64-mingw32\lib找到libcomdlg32.a并添加,添加好如下图:

在这里插入图片描述当然,具体目录地址需要根据你的codeblock安装地址选择即可。

系统功能的实现

char szFile[100] = {0};
if(FileDialog(szFile))
{puts(szFile);
}
in = fopen( szFile, "r" );
if(in==NULL)
{printf("open error\n");return;
}
while(fgets(line_buff,sizeof(line_buff),in))//逐行循环读取文件,直到文件结束
{//文件的数据处理操作
}
fclose(in); //使用完毕,关闭文件

至此,我们实现了图形界面下的文件打开、读取、操作和关闭的全流程。


http://chatgpt.dhexx.cn/article/usN6U0dw.shtml

相关文章

codeblocks应用之debug .

一个偶然的机会,我发现了codeblocks这款IDE,因为它主要用于开发c/c,所以没有visual studio那么臃肿,感觉比较快捷,好用。但是其资料多为英文,本着利人利己的初衷,我决定挑选一些开发中必须使用的…

codeblock报错解决及正确安装

文章目录 前言报错解决原因一原因二 正确安装 前言 文章同步于我的个人博客https://quan9i.github.io/c/#more,欢迎大家访问! 最近在重新使用codeblock时发现了部分问题,总结如下 报错解决 在运行时出现如下报错 "HelloWorld - Debu…

codeblocks 使用汇总

享受Code::Blocks编辑快感的几个关键 原文地址:http://blog.csdn.net/Utensil/archive/2008/12/24/3593502.aspx 感谢Loaden的补充。此文是对帖子http://wxforum.shadonet.com/viewtopic.php?t22128 的总结和整理,按个人喜好做了取舍和重新排序。 说明…

CodeBlocks 的下载安装

一、下载 1.在浏览器上输入CodeBlocks或者输入网址https://www.codeblocks.org/,进入CodeBlocks官网 2.点击Downloads,进入Downloads界面 3.进入Downloads页面,点击Download the binary release(二进制版) 4.选择下…

Code::Blocks的使用教程

四年没有认真地写过C了,决定从今天开始,从codeblocks开始! 打开软件界面,点击“创建新项目” 选择“console application”,然后点“出发” 点击“下一步” 选择“c”,点击“下一步” 输入项目标题 选“…

codeblock的安装与使用

绝大多数编程竞赛中都要求使用的编译器是codeblocks,这里给大家演示一下安装步骤供大家参考 首先大家来到code blocks的官网下载地址 http://www.codeblocks.org/downloads/26 大家找到与图片对应的windows系统,如果你是Linux系统根据下面的向导安装就可以很简单&a…

codeblocks的debug教程(超详细)

codeblocks的debug教程 转:作者:BLF2原文:https://blog.csdn.net/codeblf2/article/details/78183196 ------------------------------------------------------------------------------------------------------------------------------…

CodeBlock 使用手册

译者言:工欲善其事,必先利其器。一个好的工具能事半功倍。写程序时,特别是写C程序,大部分人脑子里想到的第一个工具就是VisualStudio。不可否认,VS很好很强大,用户体验非常好。但VisualStudio也是有缺点的&…

CodeBlocks使用攻略

CodeBlocks使用攻略 第一步:点击create a new project 第二步:选择Console application,点击Go 第三步:选择C,点击next 第四步:写上你的项目名称,例如:Project01,点击ne…

CodeBlocks的安装及使用

CodeBlocks的安装及使用 下载并安装CodeBlocks 一、在百度等搜索引擎搜索codeblocks或直接输入网址https://www.codeblocks.org/进入CodeBlocks官网的下载页面 二、进入下载页面 四、选择合适的版本,这里我下载的是适用于windows的带编译器等工具的版本&#…

CodeBlocks系列(1)

CodeBlocks系列(1) IDE为什么选择CodeBlocks安装CodeBlocks(win10)创建一个工程 本博客是自己在学习摸索中的记录,如果有帮助,点个免费的赞 IDE 对于学习一门编程语言,一个优秀的对胃口的集成开…

Code::Blocks使用教程

使用之前我们先准备一段代码。 #include <stdio.h> #include <stdlib.h> int main() { printf("欢迎进入www.dotcpp.com编程网站&#xff01;"); system("pause"); return 0; } 1) 创建文件的方式为点击左上角File->New->File。…

codeblocks使用教程

基本介绍 CodeBlocks是一个开放源码的全功能的跨平台C/C集成开发环境。CodeBlocks由纯粹的C语言开发完成&#xff0c;CodeBlocks是一个跨平台的开源IDE&#xff0c;可以用来编写多种程序&#xff0c;而且不需要购买许可证&#xff0c;上手难度不高&#xff0c;是一款轻量却又不…

codeblocks安装教程和文件的简单创建方法

绝大多数编程竞赛中都要求使用的编译器是codeblocks,这里给大家演示一下安装步骤供大家参考 首先大家来到code blocks的官网下载地址 http://www.codeblocks.org/downloads/26 大家找到与图片对应的windows系统&#xff0c;如果你是Linux系统根据下面的向导安装就可以很简单…

code:blocks安装(最新详解版)

code:blocks 20.03文件安装包分享&#xff08;含概MinGW文件&#xff09; 链接: https://pan.baidu.com/s/1xtRN2fQta7WAwMoS7B1PKw 提取码: svcq 复制这段内容后打开百度网盘手机App&#xff0c;操作更方便哦 1.进入code&#xff1a;blocks官网&#xff0c;点击Downloads c…

codeblock图形界面编程

Code::Blocks 是一款免费开源的 C/C IDE&#xff0c;支持 GCC、MSVC 等多种编译器&#xff0c;还可以导入 Dev-C 的项目。Code::Blocks 的优点是&#xff1a;跨平台&#xff0c;在Linux、Mac、Windows 上都可以运行&#xff0c;且自身体积小&#xff0c;安装非常方便&#xff0…

codeblock安装与使用教程

codeblock是c/c项目实现的一个好工具&#xff0c;相较于dev/eclipse而言codeblock更加灵活简便&#xff0c;易上手。 目录 安装使用对于已经有的项目 安装 从官网上下载对应版本安装包。对于win10系统而言&#xff0c;可以选择的包括codeblocks-20.03-setup.exe和codeblocks-2…

CodeBlock的安装、配置和运行

目录 1.安装code::Block 2.启动code::Block ​3.配置 3.1编译器设置 3.2 软件汉化 3.3 设置代码的字体 3.4 设置消息字体---可先跳过熟悉后再设置 4.创建运行第一个项目 可到CB官网&#xff08;https://www.codeblocks.org/downloads/binaries/&#xff09;下载&#x…

Mysql之数据库设计规范

1. 三大范式 首先要明白”范式&#xff08;NF&#xff09;”是什么意思。按照教材中的定义&#xff0c;范式是“符合某一种级别的关系模式的集合&#xff0c;表示一个关系内部各属性之间的联系的合理化程度”。数据库范式也分为1NF&#xff0c;2NF&#xff0c;3NF&#xff0c;…

MySQL高级篇知识点——数据库的设计规范

目录 1.为什么需要数据库设计&#xff1f;2.范式2.1.范式简介2.2.范式都包括哪些2.3.键和相关属性的概念2.4.第一范式 (1NF)2.5.第二范式 (2NF)2.6.第三范式 (3NF)2.7.小结 3.反范式化3.1.概述3.2.应用举例3.2.1.举例一3.2.2.举例二3.2.3.举例三3.2.4.举例四 3.3.反范式的新问题…