`

属性类:Properties

    博客分类:
  • JAVA
 
阅读更多

1、掌握Properties 类的使用

2、可以在普通文件及XML 格式的文件中保存及读取属性

属性是在程序中经常出现的一种形式。在类集中提供了一个专门的Properties 类,以完成属性的操作。

 

public class Properties extends Hashtable<Object, Object>

Properties 是Hashtable 的子类,则也是Map 的子类,可以使用Map 的全部操作,但是一般情况下属性类是单独使用的。

 

设置和取得属性:

设置属性:

public Object setProperty(String key, String value)

得到属性:

public String getProperty(String key)

public String getProperty(String key, String defaultValue)

验证以上的操作方法:

import java.util.Properties;
public class PropertiesDemo1{
	public static void main(String args[]){
		Properties pro = new Properties() ;	// 创建Properties对象
		pro.setProperty("BJ","BeiJing") ;	// 设置属性
		pro.setProperty("TJ","TianJin") ;
		pro.setProperty("NJ","NanJing") ;	
		System.out.println("1、BJ属性存在:" + pro.getProperty("BJ")) ;
		System.out.println("2、SC属性不存在:" + pro.getProperty("SC")) ;
		System.out.println("3、SC属性不存在,同时设置显示的默认值:" + pro.getProperty("SC","没有发现")) ;
	}
}

 输出结果:

1、BJ属性存在:BeiJing
2、SC属性不存在:null
3、SC属性不存在,同时设置显示的默认值:没有发现

 以上属于设置和读取属性,当然,对于属性中也可以将属性保存在文件之中。提供了以下的方法:

public void Store(OutputStream out,String comments) throws IOException,将以上的属性写入到 d:\area.properties 文件之中。

import java.util.Properties;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class PropertiesDemo1{
	public static void main(String args[]){
		Properties pro = new Properties() ;	// 创建Properties对象
		pro.setProperty("BJ","BeiJing") ;	// 设置属性
		pro.setProperty("TJ","TianJin") ;
		pro.setProperty("NJ","NanJing") ;	
		File file = new File("D:" + File.separator + "area.properteis") ;	// 指定要操作的文件
		try{
			pro.store(new FileOutputStream(file),"Area Info") ;	// 保存属性到普通文件
		}catch(FileNotFoundException e){
			e.printStackTrace() ;
		}catch(IOException e){
			e.printStackTrace() ;
		}
	}
}

 d:\area.properties 文件中的内容为:

#Area Info
#Mon Mar 11 09:56:28 CST 2013
BJ=BeiJing
NJ=NanJing
TJ=TianJin

 此时,已经将属性的内容保存在了文件之中。既然可以保存,那么就可以读取。

 

public void load(InputStream inStream) throwsIOException,使用该方法从文件中读取属性内容

import java.util.Properties;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class PropertiesDemo1{
	public static void main(String args[]){
		Properties pro = new Properties() ;	// 创建Properties对象
		File file = new File("D:" + File.separator + "area.properteis") ;	// 指定要操作的文件
		try{
			pro.load(new FileInputStream(file)) ;	// 读取属性文件
		}catch(FileNotFoundException e){
			e.printStackTrace() ;
		}catch(IOException e){
			e.printStackTrace() ;
		}
		System.out.println("1、BJ属性存在:" + pro.getProperty("BJ")) ;
		System.out.println("2、SH属性不存在:" + pro.getProperty("SH")) ;
	}
}

 输出结果:

1、BJ属性存在:BeiJing
2、SH属性不存在:null

 以上全部保存在了普通的文件之中。实际上在Properties 操作的时候也可以将内容全部保存在XML文件中。

import java.util.Properties;
import java.io.File;
import java.io.FileOutputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class PropertiesDemo1{
	public static void main(String args[]){
		Properties pro = new Properties() ;	// 创建Properties对象
		pro.setProperty("BJ","BeiJing") ;	// 设置属性
		pro.setProperty("TJ","TianJin") ;
		pro.setProperty("NJ","NanJing") ;	
		File file = new File("D:" + File.separator + "area.xml") ;	// 指定要操作的文件
		try{
			pro.storeToXML(new FileOutputStream(file),"Area Info") ;	// 保存属性到普通文件
		}catch(FileNotFoundException e){
			e.printStackTrace() ;
		}catch(IOException e){
			e.printStackTrace() ;
		}
	}
}

  d:\area.xml 文件中的内容为:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<comment>Area Info</comment>
<entry key="BJ">BeiJing</entry>
<entry key="NJ">NanJing</entry>
<entry key="TJ">TianJin</entry>
</properties>

 既然可以使用XML 文件格式保存,那么就可以使用XML 文件读取内容

import java.util.Properties;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
public class PropertiesDemo05{
	public static void main(String args[]){
		Properties pro = new Properties() ;	// 创建Properties对象
		File file = new File("D:" + File.separator + "area.xml") ;	// 指定要操作的文件
		try{
			pro.loadFromXML(new FileInputStream(file)) ;	// 读取属性文件
		}catch(FileNotFoundException e){
			e.printStackTrace() ;
		}catch(IOException e){
			e.printStackTrace() ;
		}
		System.out.println("1、BJ属性存在:" + pro.getProperty("BJ")) ;
	}
}

 输出结果:

1、BJ属性存在:BeiJing

 

分享到:
评论

相关推荐

    java 枚举遍历键值对 属性类Properties 类加载器

    Properties类继承自Hashtable,用于读写属性列表(键/值对),常用于存储配置信息。例如,一个.properties文件可以这样创建: ``` # sample.properties username=admin password=123456 ``` 在Java中,我们可以...

    利用Java的Properties 类读取配置文件信息

    Java提供了一个内置的`java.util.Properties`类,用于处理`.properties`文件,这种格式通常用来存储键值对,即键(key)和对应的值(value)。以下是如何利用`Properties`类读取和操作`.properties`文件的详细步骤。...

    Java_Properties_类读取配置文件信息

    【Java_Properties_类读取配置文件信息】 在软件开发中,配置文件是必不可少的,因为它们允许我们灵活地管理程序中的可变参数,而无需修改源代码。Java 支持使用 `.properties` 文件作为其标准配置文件格式,这得益...

    Properties类小结

    3. `loadFromXML(InputStream)` 和 `storeToXML(OutputStream, String, String)`:除了普通的文本格式,Properties类还支持XML格式的属性文件。这两个方法分别用于从XML输入流加载和向XML输出流写入属性。 4. `...

    读取properties文件工具类

    这个"读取properties文件工具类"是为了简化程序中对`.properties`文件的读取操作而设计的。通过这样的工具类,开发者可以方便地加载和获取配置文件中的属性值,避免重复编写相同的代码。下面我们将详细探讨`...

    java类文件通过$获取properties文件的属性值

    ### Java 类文件通过 $ 获取 properties 文件的属性值 在Java开发中,经常需要读取配置文件中的信息,例如数据库连接信息、系统环境变量等。这些配置通常存储在`.properties`文件中,便于维护和管理。本文将详细...

    java对properties文件的操作.pdf

    Properties类扩展自Hashtable类,并且专门为处理属性文件而设计,比如在Java中常见的.properties文件。 首先,我们来看如何加载Properties文件。可以使用类加载器(ClassLoader)的getResourceAsStream方法来加载类...

    Property工具类,Properties文件工具类,PropertiesUtils工具类

    - 自Java 11起,`Properties`类添加了`storeToXML()`和`loadFromXML()`方法,支持XML格式的属性文件,提供了更好的可读性和结构化存储。 在实际开发中,`PropertiesUtils.java`这样的工具类通常包含静态方法,用于...

    读取Properties信息工具类

    在Java编程中,Properties类是用于处理属性文件的关键工具,它允许我们加载、存储和管理配置参数。"读取Properties信息工具类"是指一个自定义的Java类,它封装了与Properties文件交互的过程,通常包括加载、获取和...

    Eclipse属性编辑器(PropertiesEditor)及安装说明.rar

    Eclipse属性编辑器,也被称为PropertiesEditor,是Eclipse集成开发环境中的一个重要工具,用于方便地编辑和管理项目的属性设置。这个编辑器扩展了Eclipse的功能,使得开发者能够更直观地查看和修改与项目相关的配置...

    Properties 文件比较工具

    `Properties`类允许加载和保存属性列表,支持键值对的形式,其中键和值都是字符串。通过调用`load()`方法可以从输入流中读取属性列表,而`store()`方法则可以将属性列表写入输出流。 `diffProperties.java`文件很...

    java读取properties属性文件

    首先,我们需要了解`java.util.Properties`类,它是Java标准库提供的一种用于处理属性列表的类。我们可以通过以下步骤来读取properties文件: 1. **加载Properties文件**: 使用`Properties`类的`load()`方法,...

    CSS和JavaScript标签style属性对照表

    ##### 边框属性(Border Properties) - **CSS属性**:`border` - **JavaScript属性**:`border` - **CSS属性**:`border-bottom` - **JavaScript属性**:`borderBottom` - **CSS属性**:`border-bottom-color` -...

    android中读取properties文件

    博文链接中提到的可能涉及对`Properties`类的源码分析,可以深入了解其实现原理,例如如何解析文件,如何处理转义字符,以及如何缓存加载的属性等。 7. 工具应用 开发过程中,可以使用IDE的内置功能或第三方插件...

    UIProperties 属性控件

    标题中的“UIProperties 属性控件”指的是在软件开发中,特别是使用Microsoft Foundation Class (MFC)库时,用于创建类似Visual Studio属性栏的一种用户界面元素。这种控件允许用户以直观的方式查看和编辑对象的属性...

    能保存Properties文件注释的Properties工具类

    在Java编程中,Properties类是用于处理属性列表的,这些属性列表通常以键值对的形式存储,例如配置文件。然而,标准的java.util.Properties类在加载和保存文件时会忽略注释,这在某些场景下可能不够理想。针对这个...

    SPRING:bean配置properties

    `classpath:`前缀表示该文件位于类路径下,即项目src目录下的某个位置。 ### 多个Properties文件的集成 当存在多个配置文件时,可以使用`locations`属性代替`location`,以列表形式指定多个文件路径。例如: ```...

    properties类封装

    在Java编程语言中,`Properties` 类是一个非常重要的工具,用于处理配置文件,这些文件通常以键值对的形式存储数据。这些数据可以是系统属性、应用程序配置或任何其他需要持久化存储的数据。`Properties` 类提供了...

    properties,这个库提供了使用属性的方便方法。它可以处理硬盘上、类路径中的属性文件或从系统属性中获取值.zip

    在Java领域,`java.util.Properties`类是处理属性文件的标准工具,但其功能相对有限。为了提供更强大的属性处理能力,开源社区开发了`properties`库,它提供了更丰富的特性和便利的方法,使得开发者能更高效地管理和...

Global site tag (gtag.js) - Google Analytics