在我们写的程序当中,总有一些配置信息需要保存下来,以便完成程序的功能,最简单的办法就是将这些信息写入INI文件中,程序初始化时再读入.具体应用如下:

  一.将信息写入.INI文件中.

  1.所用的WINAPI函数原型为:

BOOL WritePrivateProfileString(

  其中各参数的意义:

   LPCTSTR lpAppName 是INI文件中的一个字段名.

   LPCTSTR lpKeyName 是lpAppName下的一个键名,通俗讲就是变量名.

   LPCTSTR lpString 是键值,也就是变量的值,不过必须为LPCTSTR型或CString型的.

   LPCTSTR lpFileName 是完整的INI文件名.

  2.具体使用方法:设现有一名学生,需把他的姓名和年龄写入 c:\stud\student.ini 文件中.

CString strName,strTemp;

  此时c:\stud\student.ini文件中的内容如下:

   [StudentInfo]

  3.要将学生的年龄保存下来,只需将整型的值变为字符型即可:

strTemp.Format("%d",nAge);

二.将信息从INI文件中读入程序中的变量.

  1.所用的WINAPI函数原型为:

DWORD GetPrivateProfileString(

  其中各参数的意义:

   前二个参数与 WritePrivateProfileString中的意义一样.

   lpDefault : 如果INI文件中没有前两个参数指定的字段名或键名,则将此值赋给变量.

   lpReturnedString : 接收INI文件中的值的CString对象,即目的缓存器.

   nSize : 目的缓存器的大小.

   lpFileName : 是完整的INI文件名.

  2.具体使用方法:现要将上一步中写入的学生的信息读入程序中.

CString strStudName;

  执行后 strStudName 的值为:"张三",若前两个参数有误,其值为:"默认姓名".

  3.读入整型值要用另一个WINAPI函数:

UINT GetPrivateProfileInt(

  这里的参数意义与上相同.使用方法如下:

nStudAge=GetPrivateProfileInt("StudentInfo","Age",10,"c:\\stud\\student.ini");

三.循环写入多个值,设现有一程序,要将最近使用的几个文件名保存下来,具体程序如下:

  1.写入:

CString strTemp,strTempA;

  2.读出:

nCount=::GetPrivateProfileInt("FileCount","Count",0,"c:\\usefile\\usefile.ini");

file://使用strTempA中的内容.

}

补充四点:
   1.INI文件的路径必须完整,文件名前面的各级目录必须存在,否则写入不成功,该函数返回 FALSE 值.
   2.文件名的路径中必须为 \\ ,因为在VC++中, \\ 才表示一个 \ .
   3.也可将INI文件放在程序所在目录,此时 lpFileName 参数为: ".\\student.ini".

vc中常用文件操作(二) Ini文件操作相关推荐

  1. VC中利用ADO共同实现数据库的操作

    VC中利用ADO共同实现数据库的操作 ADO是应用层的编程接口,它通过OLE DB提供的COM接口访问数据,它适合于各种客户机/服务器应用系统和基于Web的应用,尤其在一些脚本语言中访问数据库操作是A ...

  2. linux读ini文件,Linux下INI文件解析

    一个linux下的ini文件解析模块. 因为工作需要, 需要在linux环境去解析ini配置文件. 个人写了一个委简单ini解析模块. 先记录下ini文件的格式 ini文件的格式为 [section1 ...

  3. linux 安装上传文件,linux常用命令(二)文件上传下载及软件安装

    1.上传下载工具安装 (1)WINDOWS 到linux的文件上传及下载: windows下打开secureCRT,通过SSH连到⾄至远程linux主机: 上传下载工具安装命令:yum -y inst ...

  4. 第三十二天学习笔记-web漏洞-文件上传的条件竞争、.htaccess文件与.user.ini文件使用前提、二次渲染

    目录 二次渲染原理 绕过方法 htaccess配置文件 .user.ini 二次渲染原理 在我们上传文件后,网站会对图片进行二次处理(格式.尺寸,保存,删除 要求等),服务器会把里面的内容进行替换更新 ...

  5. Linux中常用C/C++一些头文件的作用

    2019独角兽企业重金招聘Python工程师标准>>> 1. Linux中一些头文件的作用: <assert.h>:ANSI C.提供断言,assert(表达式) < ...

  6. VC 中clw、ncb、aps文件的作用

    .clw文件记录了类的信息,如果classView中某个类不见了,重新生成该文件就可以了,方法:删除此文件,点击"建立类向导",根据提示输入工程名称就可以了: .ncb文件记录了类 ...

  7. 简述VC 中clw、ncb、aps文件的作用

    clw文件 记录了类的信息,如果classView中某个类不见了,重新生成该文件就可以了,方法:删除此文件,点击"建立类向导",根据提示输入工程名称就可以了: .ncb文件 记录了 ...

  8. c语言中常用函数头文件,c语言中常用的函数和头文件

    头文件ctype.h 函数列表 函数类别函数目的详细说明 字符测试为字符和数字的isalnum 是否为isalpha字符 是否控制字符iscntrl 是否为数字isdigit 是否能够显示文字(空格除 ...

  9. python中常用的模块二

    一.序列化 指:在我们存储数据的时候,需要对我们的对象进行处理,把对象处理成方便存储和传输的数据格式,这个就是序列化, 不同的序列化结果不同,但目的是一样的,都是为了存储和传输. 一,pickle.可 ...

最新文章

  1. WebSocket部署服务器外网无法连接解决方案
  2. CentOS中启动Jar包、后台启动、查看输出日志、查看服务进程、杀死进程
  3. SpringBoot配置在应用启动后立即执行某些方法代码案例
  4. boost::gil::view_type_from_pixel用法的测试程序
  5. PHP Curl多线程原理实例详解
  6. iOS之深入解析YYImage图片处理的底层原理
  7. 【sqlite常用操作SQL语句】
  8. springboot需要tomcat服务器吗_SpringBoot学习(二):内嵌服务器引擎(Tomcat,Jetty)实现原理...
  9. (2) MongoDB基本概念及与关系型数据库的对照
  10. txt记录位置 c++,python显示位置
  11. [论文阅读][深度学习-三维重建]Single-Shot 3D Shape Reconstruction Using Structured Light and CNN
  12. Linux 的内存分页管理
  13. 展示魅力东莞,传递亚运激情
  14. 独家专访 | “共同基金之父”纽伯格的公司(NeubergerBerman)要在中国做什么?
  15. 不收费的数据恢复软件推荐
  16. JDK下载安装教程及环境变量配置
  17. 【无限互联】学员作品 豆果美食IOS客户端
  18. R计算功能多样性— functional diversity (FD)
  19. python selenium+firefox 使用已打开的火狐浏览器进行操作(不需要每次都重新打开火狐)
  20. 微信小程序录制视频方法踩坑总结

热门文章

  1. bitcoin转账api,python3.7
  2. 1.1 《硬啃设计模式》 第1章 大话设计模式
  3. 2.3 CMMI2级——项目跟踪和控制(Project Monitoring and Control)
  4. jQuery里面的datepicker日期控件默认是显示英文的,如何显示中文或其他语言呢?...
  5. s3c2410下利用TL16C554扩展4个全功能串口
  6. PostgreSQL 数据目录结构
  7. 微信小程序开发流程介绍
  8. webpack热更新实现
  9. 【LeetCode-面试算法经典-Java实现】【015-3 Sum(三个数的和)】
  10. 使用pg_stat_statement监控pgsql遇到的问题