`
scorpionqxq
  • 浏览: 50144 次
  • 性别: Icon_minigender_1
  • 来自: 西安
最近访客 更多访客>>
社区版块
存档分类
最新评论

java.util.Properties 的一些简单使用

    博客分类:
  • J2SE
阅读更多

 Properties extends Hashtable 。

也就是说,Properties 类也是以“键值对”(key - value) 形式存储。一般都写成 xxx.properties 文件,但是该类还有 loadFromXML 和 storeToXML 的两个方法,那么也就是说 这种形式可以存储成 XML 文件,那么 XML 文件里的格式有该怎么写呢?API 里的说明是:

loadFromXML(InputStream)storeToXML(OutputStream, String, String) 方法按简单的 XML 格式加载和存储属性。默认使用 UTF-8 字符编码,但如果需要,可以指定某种特定的编码。XML 属性文档具有以下 DOCTYPE 声明:

 <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
 
注意,导入或导出属性时 访问系统 URI (http://java.sun.com/dtd/properties.dtd);该系统 URI 仅作为一个唯一标识 DTD 的字符串:
    <?xml version="1.0" encoding="UTF-8"?>

    <!-- DTD for properties -->

    <!ELEMENT properties ( comment?, entry* ) >

    <!ATTLIST properties version CDATA #FIXED "1.0">

    <!ELEMENT comment (#PCDATA) >

    <!ELEMENT entry (#PCDATA) >

    <!ATTLIST entry key CDATA #REQUIRED>

但这样子的格式很不容易看明白到底是什么。下面做个测试看看这个格式是什么样子的。

 

1、创建一个文件,名为 a.porperties文件内容的格式如下

name=aaa
password=bbb

        读取该文件信息代码,如下

	Properties pps = new Properties();
	try {
		pps.load(new FileInputStream("a.properties"));
		Enumeration names = pps.propertyNames();
		while (names.hasMoreElements()) {
			String strKey = (String) names.nextElement();
			String strValue = pps.getProperty(strKey);
	
			System.out.println(strKey + "=" + strValue);
		}
	} catch (Exception e) {
		e.printStackTrace();
	}

        将该properties文件转为XML文件代码,如下

	pps.storeToXML(new FileOutputStream("bbb.xml"), "agreal", "GB2312");

        生成的XML文件如下

<?xml version="1.0" encoding="GB2312" standalone="no"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>agreal</comment>
<entry key="password">bbb</entry>
<entry key="name">aaa</entry>
</properties>

        再试试读取该文件内容,代码如下

	Properties pps = new Properties();
	try {
		pps.loadFromXML(new FileInputStream("bbb.xml"));
		Enumeration names = pps.propertyNames();
		while (names.hasMoreElements()) {
			String strKey = (String) names.nextElement();
			String strValue = pps.getProperty(strKey);

			System.out.println(strKey + "=" + strValue);
		}
	} catch (Exception e) {
		e.printStackTrace();
	}

 

事情就是这样发生的。

 

从生成的 XML 文件来看,便可知道 API 给的格式是个怎样的了。

分享到:
评论

相关推荐

    java.util.logging.Logger使用详解

    ### Java.util.logging.Logger 使用详解 #### 一、创建Logger对象 在Java中,`java.util.logging.Logger` 是标准的日志框架之一,它提供了基础的日志记录功能。为了使用这一功能,首先需要获得 `java.util.logging...

    java.util包

    以上只是java.util包中的一部分重要组件,实际上,这个包还包含更多其他类和接口,如Enumeration、Stack、Properties等,它们都在各自的领域提供了丰富的功能。掌握java.util包的使用是每个Java开发者必备的技能,能...

    java.util包总结

    Java.util包是Java标准库中的核心包之一,它包含了大量用于日常编程的工具类和接口。这个包在Java 2版本中得到了显著增强...通过熟练掌握和使用java.util包中的类和接口,开发者能够更加高效地处理数据和实现复杂逻辑。

    改进java.util.Properties类,让输出格式与输入格式保持不变.

    在实际应用中,我们可以使用`SafeProperties`类替换`java.util.Properties`,确保文件的格式一致性。例如: ```java SafeProperties props = new SafeProperties(); props.load(new FileInputStream("config....

    org.apache.jasper.JasperException: java.util.MissingResourceException 解决方案

    在Java Web开发中,我们经常会遇到“org.apache.jasper.JasperException: java.util.MissingResourceException”这样的错误。这个异常通常发生在尝试访问一个不存在的资源文件时,比如国际化(i18n)配置文件。本文...

    使用Properties类来读取配置文件

    本篇文章将深入探讨如何使用Java中的`java.util.Properties`类来读取这些配置文件,包括基本用法、方法解释、代码示例及测试案例。 `Properties`类是Java标准库的一部分,专门设计用来处理键值对的存储,常用于存储...

    java_util 工具包

    `java.util`包是Java语言中不可或缺的一部分,它提供的各种工具类和接口极大地丰富了Java的编程功能,使得开发者能够更加高效地完成各种任务,从简单的日期时间处理到复杂的事件监听和数据结构管理。理解并掌握`java...

    java 读properties 文件六种方法

    ### 方法一:使用`java.util.Properties`类的`load()`方法 这是最直接的方法,通过创建`Properties`对象并调用其`load()`方法,传入一个`InputStream`实例来加载Properties文件。例如: ```java import java.io....

    Java读取.properties文件

    在Java中,我们可以使用`java.util.Properties`类来读取和操作这些文件。以下是一个简单的示例,展示如何读取`.properties`文件: ```java import java.io.FileInputStream; import java.io.IOException; import ...

    maven-properties-checker:Apache Maven 插件,用于检查和验证 java 属性文件 (java.util.Properties) Ref。 医生在

    目的是在属性文件 (java.util.Properties) 中应用一些验证检查,以防止部署工件时出现错误和问题。 如果检查失败,则构建过程失败。 示例:在属性 vaule 末尾有一个空格并且 java 代码不修剪会发生什么? 特征: ...

    log4j.properties

    log4j.properties ,commons-logging-1.2.jar,log4j-1.2.16.jar,三个文件一起组成一个完整的日志输出,Apache的Common Logging只是一个高层的日志框架,本身并没有实现真正的写日志能力,而是依赖其它的日志系统如...

    读取Properties文件的六种方法

    使用`java.util.Properties.load()` 这种方法是通过`InputStream`加载一个`Properties`对象,然后使用`load()`方法来读取`Properties`文件中的内容。这种方法适用于任何类型的`InputStream`。 **代码示例:** ``...

    java读取.properties配置文件的几种方法

    1. 使用`java.util.Properties`类 `Properties`类是Java提供的一种内置机制,用于处理属性列表。它继承了`Hashtable`类,提供了加载和保存属性列表到流中的功能。 ```java import java.io.FileInputStream; ...

    Java读取Properties文件的六种方法

    #### 一、使用 `java.util.Properties` 类的 `load()` 方法 这是最常用的方法之一。通过创建一个输入流,然后利用 `Properties` 对象的 `load()` 方法加载数据。 ```java import java.io.FileInputStream; import ...

    Java读取.properties文件 的四种方法

    ### 方法一:使用`java.util.Properties` Java标准库提供了一个`Properties`类,专门用于处理`.properties`文件。以下是一个简单的示例: ```java import java.io.IOException; import java.io.InputStream; ...

    28个java常用的工具类

    17. **`java.util.Properties`**: 用于存储配置信息,如XML或Properties文件。 18. **`java.util.Random`**: 生成随机数。 19. **`java.util.Comparator`**: 定义自定义排序规则。 20. **`java.util.stream.*`** ...

    spring为java.util.Properties类型的属性进行赋值过程解析

    在spring中,我们可以使用Java.util.Properties类型的属性来存储和管理配置信息,而今天我们要讨论的是如何将这些属性赋值给spring bean。 在spring中,我们可以使用标签来为Bean设置属性,而对于Properties类型的...

    30个常用java工具类

    4. **`java.util.Date`** 和 **`java.time`** 包:处理日期和时间,`java.time`包是Java 8引入的新API,更强大且易于使用。 5. **`java.util.Random`**:生成随机数,适用于各种随机算法或模拟场景。 6. **`java....

    Java常用工具类大全,工作5年精心整理.zip

    14. **`java.util.Properties`**:用于读写配置文件,常用于存储应用程序的配置参数。 15. **`java.util.PriorityQueue`**:优先队列,内部实现为堆,可以自动维护元素的排序。 以上仅是部分可能包含的工具类,...

    java 读取properties文件代码

    1. **加载Properties文件**:你可以使用`java.util.Properties`类来加载文件。首先,创建一个Properties对象,然后调用`load()`方法加载文件。这通常在类的初始化或静态块中完成。 ```java Properties prop = new ...

Global site tag (gtag.js) - Google Analytics