`
kanpiaoxue
  • 浏览: 1777722 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

读取 ini 文件,Ini4j框架的使用

 
阅读更多

Ini4j 是一款操作文本行的配置文件的工具,网站对如何使用作了介绍 http://ini4j.sourceforge.net/ 。

他实现了可以读取类似 *.ini 文件格式的配置文件。

ini4j的maven pom.xml

<dependency>
  <groupId>org.ini4j</groupId>
  <artifactId>ini4j</artifactId>
  <version>0.5.2</version>
</dependency>

 

配置文件如下:

hello.conf 写道
#############################################
# ini4j example #
#############################################

[system]
program_name=ini4jExample
version=1.0

[person_1]
name=kanpiaoxue_1
age=30
sex=1

[person_2]
name=kanpiaoxue_2
age=31
sex=1

[company]
name=company1
address=beijing

[company]
name=company1
address=beijing

 java代码如下:

import org.apache.commons.lang3.StringUtils;
import org.ini4j.Config;
import org.ini4j.Ini;
import org.ini4j.Profile.Section;

import com.google.common.io.Resources;

import java.io.IOException;
import java.net.URL;
import java.util.Map.Entry;
import java.util.Set;

/**
 * <pre>
 * Init4jExample.java
 * @author kanpiaoxue<br>
 * @version 1.0
 * Create Time 2014年7月5日 下午12:43:04<br>
 * Description : init4j 的使用
 * </pre>
 */
public class Init4jExample {
    private static final String CONFIG_NAME = "hello.conf";
    private static final String SYSTEM = "system";
    private static final String COMPANY = "company";
    private static final String PROGRAM_NAME = "program_name";
    private static final String VERSION = "version";
    private static final String NAME = "name";
    private static final String AGE = "age";
    private static final String SEX = "sex";
    private static final String ADDRESS = "address";

    /**
     * <pre>
     * @param args
     * </pre>
     */
    public static void main(String[] args) {

        Config cfg = new Config();
        // 生成配置文件的URL
        URL url = Resources.getResource(CONFIG_NAME);
        // 设置Section允许出现重复
        cfg.setMultiSection(true);
        Ini ini = new Ini();
        ini.setConfig(cfg);
        try {
            // 加载配置文件
            ini.load(url);
            System.out.println(StringUtils.center(SYSTEM, 50, '='));
            // 读取 system
            Section section = ini.get(SYSTEM);
            System.out.println(PROGRAM_NAME + " : " + section.get(PROGRAM_NAME));
            System.out.println(VERSION + " : " + section.get(VERSION));

            // 读取没有规律的person系列
            System.out.println(StringUtils.center("person", 50, '='));
            Set<Entry<String, Section>> set = ini.entrySet();
            for (Entry<String, Section> entry : set) {
                String sectionName = entry.getKey();
                // 跳过 system 和 company
                if (!SYSTEM.equals(sectionName) && !COMPANY.equals(sectionName)) {
                    System.out.println(NAME + " : " + entry.getValue().get(NAME));
                    System.out.println(AGE + " : " + entry.getValue().get(AGE));
                    System.out.println(SEX + " : " + entry.getValue().get(SEX));
                }
            }

            // 读取具有相同 Section 的 company
            System.out.println(StringUtils.center(COMPANY, 50, '='));
            for (Section session : ini.getAll(COMPANY)) {
                System.out.println(NAME + " : " + session.get(NAME));
                System.out.println(ADDRESS + " : " + session.get(ADDRESS));
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}

 

分享到:
评论

相关推荐

    ini4j读取ini文件类

    ini4j库不仅能够读取INI文件,还能创建、修改和保存这些文件,为开发者提供了灵活且易于使用的API。 二、功能特性 1. **读取INI文件**:ini4j提供了`Ini`类,可以轻松加载和解析INI文件,获取节和键值对。 2. **...

    C# .net读取ini配置文件

    ### C# .NET读取INI配置文件的知识点详解 #### 一、概述 在软件开发过程中,经常会遇到需要根据不同的环境或用户需求调整程序配置的情况。例如,更改数据库连接字符串、FTP登录凭证等。传统的做法是在代码中硬编码...

    C#读取ini文件

    标题:C#读取ini文件 描述:本文将通过一个具体的实例详细介绍如何使用C#语言读取和写入ini文件,特别关注于Windows Form应用程序中对ini文件的操作。 知识点: ### 1. INI文件简介 INI文件是一种常见的配置文件...

    ini4j操作_ini4j下载_ini4j_java_

    4. **使用ini4j读取INI文件** 使用ini4j读取INI文件的代码示例如下: ```java Ini ini = new Ini(new File("config.ini")); Profile.Section section = ini.get("SectionName"); String optionValue = section....

    C# 读取ini配置文件

    这段代码首先定义了一个`IniReader`类,包含两个静态方法:`ReadIni`用于读取ini文件,`ConnectToDatabase`用于使用ini文件中的配置信息建立数据库连接。在`Main`方法中,我们调用这两个方法来完成整个流程。 需要...

    MFC读取修改ini文件

    1. **读取INI文件** - `GetProfileInt(const CString& szSection, const CString& szKey, int nDefault)`: 这个函数用于读取指定节(section)下的整型键(key)的值,如果不存在,则返回默认值。 - `...

    C#中读取Ini文件的类

    2. C#中读取Ini文件的基本步骤: - 打开文件:使用`System.IO.FileStream`或`System.IO.StreamReader`打开Ini文件。 - 读取内容:逐行读取文件,解析出键值对。 - 关闭文件:读取完成后,确保释放资源,关闭文件...

    config_ini配置文件读取_

    在本案例中,我们将讨论如何使用Qt库在界面上进行`config_ini`配置文件的读取和写入操作。 Qt是一个跨平台的C++图形用户界面应用程序开发框架,提供了丰富的API用于处理文件I/O和GUI构建。对于`config.ini`文件的...

    读取ini文件的两种方式

    使用这个命名空间,你可以按照以下步骤读取ini文件: - 首先,需要引入`System.Configuration`命名空间: ```csharp using System.Configuration; ``` - 然后,你可以直接通过键来读取ini文件中的值: ```...

    C#读取INI文件(事例程序)

    以下是一个简单的读取INI文件的示例: ```csharp using System; using System.IO; public class IniFileReader { public static void ReadIni(string filePath) { if (!File.Exists(filePath)) { Console....

    Qt 基于QFile 读写ini文件(包含QFile读取行,修改行数据,删除行数据)

    使用QFile读取ini文件: 1. 打开文件:使用QFile的`open()`函数,传入文件路径和访问模式(如QIODevice::ReadOnly)。 2. 读取内容:调用`readLine()`或`readAll()`方法获取文件内容。`readLine()`返回一行数据,`...

    C# 中读取INI文件

    本篇文章将深入探讨如何在C#中读取INI文件,以及与之相关的知识。 首先,理解INI文件的结构至关重要。INI文件是一种文本文件,其内容由多个节(Section)组成,每个节下可以有多个键值对(Key-Value Pair)。一个...

    如何在.Net的C#中制作DLL文件,读取ini文件

    以上就是使用C#在.NET环境中创建DLL文件和读取INI文件的基本操作。在实际开发中,你可能需要根据具体需求对代码进行扩展,如添加写入INI文件的功能,或者处理更复杂的文件结构。了解这些基础知识将有助于你更高效地...

    Qt之读写ini文件

    在Qt框架中,读写`.ini`配置文件是常见的任务,尤其在开发桌面应用程序时,这些文件用于存储用户的个性化设置或应用的配置信息。本文将详细介绍如何使用Qt库中的`QSettings`类来处理`.ini`文件,以及解决中文字符串...

    读取ini文件和注册表信息

    标题中的“读取ini文件和注册表信息”指的是在编程中如何操作这两种常见的数据存储格式。INI文件是一种简单的文本配置文件,通常用于存储程序的设置和配置数据,而注册表则是Windows操作系统中存储系统和应用程序...

    C# 读取INI文件

    C#作为.NET框架的一部分,虽然不直接支持内置的INI文件读写功能,但可以通过使用System.IO类库中的文本读写器来实现。本篇文章将详细探讨如何在C#中读取INI文件,并特别关注分段读取特定KEY的方法。 首先,我们需要...

    MFC INI文件读写

    对于开发人员来说,掌握如何使用 MFC(Microsoft Foundation Classes)框架进行 INI 文件的读写操作是一项基本技能。 #### 二、MFC INI 文件读写基础知识 ##### 1. WritePrivateProfileSection() 函数 此函数用于...

    asp.net读写ini文件

    2. 文件锁定:为防止并发访问导致的数据冲突,可使用文件锁(Mutex)进行同步控制。 3. 性能优化:对于大型INI文件,一次性读取和写入可能会消耗大量内存,可以考虑分块读写。 五、第三方库 虽然可以直接使用基础...

    delphi如何读取ini文档

    ### Delphi 如何读取 INI 文件 #### INI 文件的重要性与结构 INI 文件是一种简单的文本格式文件,常被用于存储程序配置数据。它由一个或多个节(Section)组成,每个节包含键值对(Key-Value Pair)。节名称位于方...

    VB读写INI文件

    ' 读取INI文件 Dim buffer As String * 255 Dim length As Long = GetPrivateProfileString(section, key, "", buffer, 255, iniFile) Dim returnedValue As String = Left(buffer, length) MsgBox("Read ...

Global site tag (gtag.js) - Google Analytics