【课程大纲】
完整教程:https://download.csdn.net/download/qq_27595745/89538425
Java软件开发实战 Java类库 第1章 Object类 共29页.pptx
Java软件开发实战 Java类库 第2章 字符串处理 共49页.pptx
Java软件开发实战 Java类库 第3章 包装器类等 共40页.pptx
Java软件开发实战 Java类库 第4章 集合操作 共31页.pptx
Java软件开发实战 Java类库 第5章 io操作 共35页.pptx
Java软件开发实战 Java类库 第6章 其它综合 共38页.pptx
Java软件开发实战 Java类库 第7章 JDBC 共113页.pptx
### Java实训教程知识点详解
#### 一、课程背景与概览
本次实训教程旨在通过一系列章节,系统地介绍Java软件开发中的核心知识点和技术实践。教程共分为七个章节,覆盖了从基础类到高级特性的广泛内容。每个章节都有具体的主题,并通过实际案例加深理解。
#### 二、第六章知识点概述
第六章的主题是“其它综合”,根据提供的部分内容来看,本章重点讲解了`Properties`类的相关知识。以下是对这一知识点的详细介绍:
#### 三、Properties类详解
**1. 概念**
`Properties`类是`java.util`包下的一个特殊类,主要用于处理属性文件(`.properties`文件或`.xml`文件)。它继承自`Hashtable`类,因此本质上是一个键值对集合。通常用于存储应用程序配置信息,便于读取和修改。
**2. 属性文件格式**
- **`.properties`文件**:以键值对的形式存储配置信息,键和值之间用等号(`=`)分隔。
- **`.xml`文件**:在JDK 1.5及以后版本,`Properties`类还支持XML格式的属性文件读写。
**3. 主要方法**
- **加载属性文件**:
- `load(InputStream inStream)`:从指定的输入流中加载属性列表。
- `loadFromXML(InputStream in)`:从XML格式的输入流中加载属性列表。
- **读取属性**:
- `getProperty(String key)`:获取指定键的属性值。
- `getProperty(String key, String defaultValue)`:如果未找到键,则返回默认值。
- **设置属性**:
- `setProperty(String key, String value)`:设置或更新属性值。
- **保存属性文件**:
- `store(OutputStream out, String comments)`:将当前属性列表保存到输出流中。
- `storeToXML(OutputStream out, String comment)`:将当前属性列表以XML格式保存到输出流中。
#### 四、Properties类实例演示
**1. 加载和读取`.properties`文件**
```java
Properties prop = new Properties();
FileInputStream fis = new FileInputStream("d://sample.properties");
prop.load(fis);
prop.list(System.out); // 输出所有属性
System.out.println("The foo property: " + prop.getProperty("foo"));
```
**2. 特点说明**
- `list()`方法输出的键值对顺序可能与文件中的顺序不同,因为`Properties`类内部使用散列表存储数据。
- 如果属性文件中存在非法格式或其他错误,`load()`方法会抛出异常。
**3. 写入XML文件**
```java
Properties prop = new Properties();
prop.setProperty("one-two", "buckle my shoe");
prop.setProperty("three-four", "shut the door");
// ... 更多属性设置
FileOutputStream fos = new FileOutputStream("output.xml");
prop.storeToXML(fos, "Generated by Properties class");
```
**4. XML文件格式**
当使用`storeToXML()`方法保存时,会生成符合XML规范的文件格式,例如:
```xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd">
<properties>
<entry key="one-two">buckle my shoe</entry>
<entry key="three-four">shut the door</entry>
<!-- 更多条目 -->
</properties>
```
#### 五、总结
通过本章的学习,读者不仅能够了解如何使用`Properties`类读取和修改属性文件,还能掌握如何将数据以XML格式存储。这对于开发过程中需要灵活配置的应用程序非常有用。此外,通过对`Properties`类的学习,还可以进一步理解Java中的集合框架以及文件I/O操作。