在实际的软件开发项目。程序经常需要翻阅了一些资料可能会改变从外部,我们需要读出的信息到一个统一的文件(一般ini档),而此文件被称为个人资料。

考虑这样一个场景,程序须要与多个数据库打交道,要从配置文件里读取各个数据库的信息。那么,我们怎样在配置文件里设置各个配置项以及怎样编敲代码将各配置项的值读入呢?

如果有两个数据库,每一个数据库包括了IP地址和port号两种信息。那么。配置文件里配置项的设置有例如以下两种形式:

(1)  形式一:

[GENERAL]

; database count

DBNum=2

[DBINFO1]

IPAddress=

Port=

[DBINFO2]

IPAddress=

Port=

(2)  形式二:

[DBINFO]

; database count

DBNum=2

; Info of database1

IPAddress1=

Port1=

; Info of database2

IPAddress2=

Port2=

在形式一中,首先在[GENERAL]配置段里面设置数据库的个数,之后在[DBINFO1]和[DBINFO2]中设置详细的数据库信息。

在形式二中,数据库的信息就放在[DBINFO]配置段里面。

在该配置段下,首先设置数据库的个数,然后是每一个数据库的详细信息。

读取这两种形式的配置项值的C程序代码例如以下:

(1)  形式一:

(2)  形式二:

在实际项目中,以上两种形式的配置项设置方法都会用到,大家要依据项目组的要求、程序特点等进行合理的选择。

(本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5。我们的聊天号码:245924426。欢迎关注。)

版权声明:本文博主原创文章,博客,未经同意不得转载。

两个文件中的配置项设置方法和C比较程序处理的更多相关文章

  1. Object类中wait代餐方法和notifyAll方法和线程间通信

    Object类中wait代餐方法和notifyAll方法 package com.yang.Test.ThreadStudy; import lombok.SneakyThrows; /** * 进入 ...

  2. php.ini文件中的include_path设置

    下面以安装smarty为例: 下面内容中,我们都是假设你的文件放在了D:\Appserv\www\Smarty下. 1.找到你的php.ini配置文件修改php.ini的include_path选项, ...

  3. IOS中获取各个文件的目录路径的方法和NSFileManager类

    转自:http://blog.sina.com.cn/s/blog_5fb39f910101di92.html IOS中获取各种文件的目录路径的方法 iphone沙箱模型的有四个文件夹,分别是什么,永 ...

  4. BeyondCompare两个文件中同一行字符长度不一致的文件对比,比如pi文件对比(xjl456852原创)

    假设有两个文件,里面存放的数字都只有一行,但长度不一样,对比时会有问题 示例文件: 对比示例如图: 左边的pi的字符串比较长,右边的比较短. 右边的pi的值不是从开始的第一个位置对比的,这样的情况是有 ...

  5. C# 类中隐藏基类方法和Partial

    今天对于.NET开发人员来说最开心的事情莫过于微软搞开源了,这觉得是给搞.NET开发的长脸.虽然我是一个初学者,这无疑给我极大的学习动力.Fighting!!! 当一个类从父类继承了一个成员时,也就继 ...

  6. 写的非常好的文章 C#中的委托,匿名方法和Lambda表达式

    简介 在.NET中,委托,匿名方法和Lambda表达式很容易发生混淆.我想下面的代码能证实这点.下面哪一个First会被编译?哪一个会返回我们需要的结果?即Customer.ID=5.答案是6个Fir ...

  7. CSS优先级问题以及jQuery中的.eq()遍历方法和:eq()选择器的差别

    在写一个TAB选项卡的时候遇到几个有意思的问题,记录下来 先把代码贴出来 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transition ...

  8. Android中Looper的quit方法和quitSafely方法

    Looper是通过调用loop方法驱动着消息循环的进行: 从MessageQueue中堵塞式地取出一个消息.然后让Handler处理该消息,周而复始.loop方法是个死循环方法. 那怎样终止消息循环呢 ...

  9. C语言如何在两个文件中访问同一个全局变量

    方法一: 不使用头文件. 1.c 中 int var; 2.c 中 extern int var; 方法二: 使用头文件. 1.c 中 int var; 不必添加#include "1.h& ...

随机推荐

  1. ubuntu 经常使用软件及环境

    安装完系统后,更新系统 sudo apt-get update # 更新源索引 sudo apt-get dist-upgrade # 更新系统 sudo apt-get autoremove 1安装 ...

  2. ZOJ 1610 间隔染色段树

    要长8000仪表板.间染色的范围,问:最后,能看到的颜色,而且颜色一共有段出现 覆盖段 数据对比水   水可太暴力 段树: #include "stdio.h" #include ...

  3. MSF连环攻击实验

    MSF连续攻击实验 一.实验拓扑 二.实验环境 Windows XP BT 5 32位 三.实验原理 通过扫描 XP主机,利用扫描出的漏洞建立 TCP会话,通过进程的提权,进一步获取目标机的控制权限 ...

  4. Net处理html页面元素工具类(HtmlAgilityPack.dll)的使用

    现在,在不少应用场合中都希望做到数据抓取,特别是基于网页部分的抓取.其实网页抓取的过程实际上是通过编程的方法,去抓取不同网站网页后,再进行 分析筛选的过程.比如,有的比较购物网站,会同时去抓取不同购物 ...

  5. STL之Vector(不定长数组)

    vector是同一种对象的集合,每一个对象都有一个相应的整数索引值.和string对象一样,标准库将负责管理与存储元素相关的类存. 引入头文件 #include<vector> 1.vec ...

  6. Ajax动态载入xml文件内容

    <%@page import="javax.swing.JOptionPane"%> <%@page import="com.ctl.util.*&qu ...

  7. SWT的选择文件和文件夹的函数

    org.eclipse.swt.widgets.DirectoryDialog//选择目录org.eclipse.swt.widgets.FileDialog//SWT.OPEN打开文件 SWT.SA ...

  8. 安装ecshop提示“安装数据失败”或者“创建管理员帐号”

    解决方法: 在install/includes/init.php文件的顶部,<?php 下增加: date_default_timezone_set ('Asia/Shanghai'); 即可 ...

  9. Git在下搭建下环境的工具

    (本文稿来自:http://www.open-open.com/news/view/55387) Git是一个快速,可扩展的,分布式的版本控制系统.Git服务器起初是专为Linux开发,后来移植至Wi ...

  10. LeetCode: Valid Palindrome [125]

    [题目] Given a string, determine if it is a palindrome, considering only alphanumeric characters and i ...