Java学习-022-Properties 文件数据写入

Properties 配置文件写入主要通过 Properties.setProperty 和 Properties.store 两个方法,此文以一个简单的 properties 文件写入源码做示例。

小二上码。。。若有不足之处,敬请大神指正,不胜感激!

Properties 文件写入源码如下所示:

 1     /**
 2      * @function write data to text file by Properties
 3      *
 4      * @author Aaron.ffp
 5      * @version V1.0.0: autoUISelenium main.java.aaron.java.tools FileUtils.java propertiesWrite, 2014-11-20 16:45:42 Exp $
 6      *
 7      * @param filename : full path for config file
 8      * @param author   : creator
 9      * @param configs  : file contents
10      * @return boolean
11      */
12     public boolean propertiesWrite(String filename, String author, ArrayList<String[]> configs){
13         Properties properties = new Properties();
14         boolean success = false;
15
16         /* 参数校验: 参数非法时, 抛出参数非法异常 */
17         if (filename == null || "".equals(filename) || author == null || "".equals(author) || configs.isEmpty()) {
18             throw new IllegalArgumentException();
19         }
20
21         try {
22             FileOutputStream fos = new FileOutputStream(filename);
23
24             for (String[] row : configs) {
25                 properties.setProperty(row[0].toString().trim(), row[1].toString().trim());
26             }
27
28             properties.store(fos, "author:" + author);
29             fos.close();
30
31             success = true;
32         } catch (IOException ioe) {
33             this.message = "文件 {" + filename + "} 写入失败!";
34             this.logger.error(this.message, ioe);
35         }
36
37         return success;
38     }

Properties 文件写入源码

测试源码如下所示:

 1     /**
 2      * Test : Store data to properties file
 3      *
 4      * @author Aaron.ffp
 5      * @version V1.0.0: autoUISelenium test.java.aaron.java.tools FileUtilsTest.java test_propertiesWrite, 2014-11-20 16:49:42 Exp $
 6      *
 7      */
 8     public void test_propertiesWrite(){
 9         this.message = "\n\n\nTEST:FileUtils.propertiesWrite(String filename, String author, ArrayList<String[]> configs)";
10         this.logger.debug(this.message);
11
12         this.fu = new FileUtils();
13         String filename = this.constantslist.PROJECTHOME + this.constantslist.FILESEPARATOR +
14                           "testng-temp" + this.constantslist.FILESEPARATOR + "test_propertiesWrite.properties";
15
16         ArrayList<String[]> configs = new ArrayList<String[]>();
17
18         String author = "Aaron.ffp";
19
20         for (int i = 0; i < 10; i++) {
21             String[] row = new String[2];
22
23             row[0] = i + "";
24             row[1] = "The row number is " + (i + 1);
25
26             configs.add(i, row);
27         }
28
29         if (this.fu.propertiesWrite(filename, author, configs)) {
30             Assert.assertEquals(this.fu.propertiesGetValue(this.fu.propertiesRead(filename), "2"), "The row number is 3", "Test case failed.");
31         } else {
32             this.message = "Test case failed, please check the data file : " + filename;
33             Assert.fail(this.message);
34         };
35     }

测试源码

测试源码中调用的 propertiesRead(String) 方法请参阅:获取 Properties 配置文件内容

测试源码中调用的 propertiesGetValue(Properties, key)方法请参阅:获取 Properties 配置文件中对应的配置项

上述方法中调用的 propertiesKeyIsExist(Properties, key)方法请参阅:判断 Properties 配置文件中是否存在对应的配置项

测试执行结果如下所示:

测试生成的  文件内容如下所示:

至此, Java学习-022-Properties 文件数据写入 顺利完结,希望此文能够给初学 Java 的您一份参考。

最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^

时间: 2024-10-10 21:06:53

Java学习-022-Properties 文件数据写入的相关文章

Java学习-014-文本文件写入实例源代码(两种写入方式)

此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 第一种:文本文件写入,若文件存在则删除原文件,并重新创建文件.源代码如下所示: 1 /** 2 * @function 文本文件操作:写入数据 3 * 4 * @author Aaron.ffp 5 * @version V1.0.0: autoUISelenium main.java.aaron.java.tools FileUtils.java txtWrite, 2015-2-2 21:03

Java学习-013-文本文件读取实例源代码(两种数据返回格式)

此文源码主要为应用 Java 读取文本文件内容实例的源代码.若有不足之处,敬请大神指正,不胜感激! 1.读取的文本文件内容以一维数组[LinkedList<String>]的形式返回,源代码如下所示: 1 /** 2 * @function 文本文件操作:读取数据 3 * 4 * @author Aaron.ffp 5 * @version V1.0.0: autoUISelenium main.java.aaron.java.tools FileUtils.java txtRead, 201

Java学习-011-创建文件实例及源代码

此文源码主要为应用 Java 创建文件的源代码.若有不足之处,敬请大神指正,不胜感激! 创建文件的源代码如下所示: 1 /** 2 * @function 文件操作:创建文件.若文件不存在,则直接创建文件:若文件存在且未被占用,则删除文件,并重新创建文件 3 * 4 * @author Aaron.ffp 5 * @version V1.0.0: autoUISelenium main.java.aaron.java.tools FileUtils.java createFile, 2015-2

java各种读取properties文件方法

java中的properties文件是一种配置文件,主要用于表达配置信息,文件类型为*.properties,格式为文本文件,文件的内容是格式是"键=值"的格式,在properties文件中,可以用"#"来作注释,properties文件在Java编程中用到的地方很多,操作很方便. 例如: test.properties ------------------------------------------------------ ##################

五种方式让你在java中读取properties文件内容不再是难题

一.背景 最近,在项目开发的过程中,遇到需要在properties文件中定义一些自定义的变量,以供java程序动态的读取,修改变量,不再需要修改代码的问题.就借此机会把Spring+SpringMVC+Mybatis整合开发的项目中通过java程序读取properties文件内容的方式进行了梳理和分析,先和大家共享. 二.项目环境介绍 Spring 4.2.6.RELEASE SpringMvc 4.2.6.RELEASE Mybatis 3.2.8 Maven 3.3.9 Jdk 1.7 Id

Java学习-010-创建文件夹源代码

此文源码主要为应用 Java 创建文件目录的源码.若有不足之处,敬请大神指正,不胜感激! 创建文件夹源代码如下所示: 1 /** 2 * @function 文件操作:创建文件夹.若文件夹不存在,则级联创建文件夹:若存在则不创建. 3 * 4 * @author Aaron.ffp 5 * @version V1.0.0: autoUISelenium main.java.aaron.java.tools FileUtils.java createPath, 2015-2-2 21:03:31

java加载properties文件的六中基本方式实现

java加载properties文件的方式主要分为两大类:一种是通过import java.util.Properties类中的load(InputStream in)方法加载: 另一种是通过import java.util.ResourceBundle类的getBundle(String baseName)方法加载. 注意:一定要区分路径格式 实现代码如下: 1 package com.util; 2 3 import java.io.FileInputStream; 4 import jav

java加载properties文件的六种方法总结

java加载properties文件的六种方法总结 java加载properties文件的六中基本方式实现 java加载properties文件的方式主要分为两大类: >一种是通过import java.util.Properties类中的load(InputStream in)方法加载: >另一种是通过import java.util.ResourceBundle类的getBundle(String baseName)方法加载. 注意:一定要区分路径格式 实现代码如下: 1 2 3 4 5

java io流 创建文件、写入数据、设置输出位置

java io流 创建文件 写入数据 改变system.out.print的输出位置 //创建文件 //写入数据 //改变system.out.print的输出位置 import java.io.*; public class Index{ public static void main(String[] args) throws Exception{ /** * 存储为二进制,给计算机看的 */ //创建文件 DataOutputStream sjl = new DataOutputStrea