`
piziyan
  • 浏览: 70376 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

读取*.cfg文件,保存进HashMap

阅读更多
/**
 * 文本内容样式
 * [SYSTEM]
 * #数据库类型
 * database=oracle
 */
private void init()
{
    BufferedReader reader = null;   
    try
    {
        reader = new BufferedReader(new FileReader(filePath));
        String line;
        while ((line = reader.readLine()) != null)
        {
            line = line.trim();
            //如果行长度为0或者首字节是#或[
            if ((line.length() == 0) || (line.charAt(0) == '#') || (line.charAt(0) == '['))
            {
                continue;
            }
            int splitPos = line.indexOf('=');               
            if (splitPos != -1)
            {
                //等号前为键 等号后为值
                configMap.put(line.substring(0, splitPos).toLowerCase(Locale.ENGLISH).trim(),
                line.substring(splitPos + 1, line.length()).trim());
                    
                }
            }
        }
        catch (Exception e)
        {
            // TODO: handle exception
        }
        finally
        {
            // 关闭文件句柄
            try
            {
                if (reader != null)
                {
                    reader.close();
                }
            }
            catch (IOException e)
            {
                e.printStackTrace();
            }
        }            
    }
分享到:
评论
1 楼 gaoxiaoweiandy 2012-01-05  


楼主,那如何 改写 cfg文件里 的 键值呢?

是不是要把文件删除了。重新建立一个文件,然后没行写进去一个键值对。

相关推荐

    ssh 面试题 全面总结

    2. **读取并解析映射信息,创建SessionFactory**:接下来读取`*.hbm.xml`或注解形式的映射文件,定义了Java对象与数据库表的映射关系,并创建`SessionFactory`对象,它是线程安全的,可以被多个线程共享。...

    内存检查工具 memtest

    5. **数据结构分析**:HashMap.txt 文件可能包含了关于 Memtest 如何管理和分析内存数据的信息,HashMap 是一种常见的数据结构,用于快速查找和存储数据,这可能涉及到 Memtest 在内存测试过程中如何高效地组织和...

    实现FreeMark读取模板生成HTML

    FreeMarker的工作原理是,通过读取预先定义好的模板文件,结合传入的数据模型,生成最终的输出文本。 在“实现FreeMark读取模板生成HTML”的过程中,我们需要完成以下几个关键步骤: 1. **安装与引入**: 首先,...

    2016面试汇总.doc

    Hibernate配置包括主配置文件`hibernate.cfg.xml`,定义数据源、JDBC连接参数等。实体映射文件(如`XXX.hbm.xml`)用于描述Java对象与数据库表的映射关系。 12. **集合存放元素是否有序**: Java集合框架中的`...

    JAVA根据模板生成WORD文件相关材料

    1. **Apache POI**: 使用Apache POI,我们可以通过读取Word模板文件,然后在模板中插入或替换特定的占位符,实现动态生成Word内容。 2. **FreeMarker**: FreeMarker提供了一种模板语言,通过定义模板变量和逻辑,...

    Java操作MongoDB数据库示例分享

    - 这个方法读取配置文件`mongodb.cfg.properties`,加载其中的属性到`cfgMap`中。如果文件不存在,将不执行任何操作。 5. **getConfigFile()**: - 返回配置文件`mongodb.cfg.properties`的File对象。如果文件...

    jsp动态生成html 3种方法

    Map, Object> dataModel = new HashMap(); dataModel.put("title", "Freemarker Example"); dataModel.put("content", "This is generated using Freemarker."); StringWriter writer = new StringWriter(); ...

    北大青鸟ACCP6.0课件,测试题

    6. **Hibernate核心概念**:熟悉Hibernate的核心配置文件(hibernate.cfg.xml),实体类的标注,以及如何在映射文件(.hbm.xml)中定义对象关系。 7. **SessionFactory与Session**:理解SessionFactory的作用,它是...

    Java freemarker生成word文件

    - 这段代码会读取模板,用数据模型替换模板中的变量,并将结果写入`output.docx`文件。 6. **高级功能** - FreeMarker支持条件语句(`<#if>`、`<#else>`)、循环(`<#list>`)、以及自定义函数(`<#function>`)...

    freemark模板导出PDF

    - **渲染模板**:使用FreeMarker API读取模板文件,结合数据模型渲染成HTML字符串。 - **生成PDF**:通过iText或PDFBox将渲染后的HTML转换为PDF。这里可能需要处理CSS样式,确保PDF布局与HTML一致。 - **输出或...

    FreeMarker+poi 模板生成word+导入图片

    6. **保存生成的Word文档**: 将修改后的Word文档保存为新的文件。 **示例代码片段** ```java // FreeMarker配置 Configuration cfg = new Configuration(Configuration.VERSION_2_3_30); cfg....

    JavaGenWord-根据模板生成word文档

    - **保存为XML**:将Word文档另存为XML文件,供FreeMarker读取。 - **编写Java代码**:创建数据模型,导入FreeMarker库,设置模板路径,加载数据模型,使用FreeMarker的`Template`类进行模板渲染。 - **生成Word*...

    Rust学习思维导图.pdf

    - **`RwLock<T>`**: 读写锁,允许多个线程同时读取,但写入时是独占的。 #### 九、自定义类型 **9.1 结构体** - **结构体定义 (`struct`)**: 定义一个结构体类型。 - **结构体实例化**: 通过 `struct` 关键字创建...

    freemarker解析成pdf

    4. **读取模板**:使用配置好的Freemarker加载模板文件。 ```java Template template = cfg.getTemplate("report.ftl"); ``` 5. **生成PDF**:使用Freemarker的`process`方法将模板和数据模型结合,然后通过一个...

    java 中根据html模板生成新的html

    Map, Object> dataModel = new HashMap(); dataModel.put("title", "Java与HTML结合"); dataModel.put("content", "这是一个示例"); // 输出到字符串或写入文件 StringWriter out = new StringWriter(); template....

    自整理Java关于基础和框架的面试题

    - **HashMap**:非线程安全,允许一个null键和多个null值。 ##### Forword(请求转发)与Redirect(重定向) - **请求转发**:服务器内部进行转发,客户端地址栏不变。 - **重定向**:服务器告诉客户端去另一个地址获取...

    java通过freemarker模板导出word含图片

    首先,将图片文件读取为字节数组,然后使用Base64编码转换为字符串。在模板文件中,可以使用FreeMarker的`<#assign>`指令将这个字符串赋值给一个变量。 5. **生成Word文档**: 使用FreeMarker的`Template`类加载...

    java导出word

    - 在Java中,我们可以通过FreeMarker API读取FTL模板文件,然后用数据模型填充模板,生成最终的Word文档内容。 - FTL模板文件使用简单的语法定义变量和控制结构,如`<#if>`、`<#foreach>`等,方便动态生成内容。 ...

    第一个FreeMarker HelloWorld程序

    5. **生成输出**: 最后,使用FreeMarker的`Template`类读取模板文件,结合数据模型生成输出: ```java import freemarker.template.Configuration; import freemarker.template.Template; import freemarker....

    Java模板引擎之FreeMarker

    FreeMarker的工作原理是,它读取一个由开发者定义的模板文件,然后结合数据模型,生成最终的输出。 **模板语言** FreeMarker的模板语言(FTL)是一种简单的文本标记语言,不包含任何Java代码。在FTL中,你可以使用...

Global site tag (gtag.js) - Google Analytics