(请观看本人博文——《详解 I/O流》

Properties类:

概念

Properties 类的对象 是 一个持久的属性集

Properties 可 保存在流中从流中加载

属性列表中每个键及其对应值都是一个字符串

Properties类的 父类是Hashtable

属于双列集合,这个集合中的键和值都是字符串

Properties类 不能指定泛型

现在,本人来说明一下本人的见解:

在本人之前的博文中,相信大家已经了解到了properties文件的许多知识。

但是,在学习到此类的时候,本人对于properties文件的理解更加深刻了。 properties文件存储的是 键值对制 的信息

就像是一个 外存化的Hashtable

现在,本人来介绍下这个类的构造方法

构造方法

  • Properties()

    创建一个无默认值的空属性列表
  • Properties(Properties defaults)

    创建一个带有指定默认值的空属性列表

现在,本人来展示下这个类的常用API

常用API

  • void store(OutputStream out, String comments)

    以适合使用 load(InputStream) 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流
  • void store(Writer writer, String comments)

    以适合使用 load(Reader) 方法的格式,将此 Properties 表中的属性列表(键和元素对)写入输出字符
  • void storeToXML(OutputStream os, String comment)

    发出一个表示此表中包含的所有属性的 XML 文档
  • void storeToXML(OutputStream os, String comment, String encoding)

    使用指定的编码发出一个表示此表中包含的所有属性的 XML 文档
  • void load(InputStream inStream)

    从输入流中读取属性列表键和元素对
  • void load(Reader reader)

    按简单的面向行的格式从输入字符流中读取属性列表键和元素对
  • void loadFromXML(InputStream in)

    指定输入流中,由 XML 文档所表示的所有属性加载到此属性表中
  • String getProperty(String key)

    指定的键在此属性列表中搜索属性

    若搜索不到,则null
  • String getProperty(String key, String defaultValue)

    指定的键在属性列表中搜索属性

    若搜索不到,则返回defaultValue
  • void list(PrintStream out)

    属性列表输出到指定的输出流
  • void list(PrintWriter out)

    属性列表输出到指定的输出流
  • Enumeration<?> propertyNames()

    返回属性列表中所有键的枚举

    如果在主属性列表中未找到同名的键,则包括默认属性列表中不同的键
  • Object setProperty(String key, String value)

    调用 Hashtable 的方法 put
  • Set< String > stringPropertyNames()

    返回此属性列表中的键集,其中该键及其对应值是字符串,

    如果在主属性列表中未找到同名的键,则还包括默认属性列表中不同的键
  • void save(OutputStream out, String comments)

    已过时

    如果在保存属性列表时发生 I/O 错误,则此方法不抛出 IOException。

    保存属性列表的首选方法是通过 store(OutputStream out, String comments) 方法或 storeToXML(OutputStream os, String comment) 方法来进行

现在,本人来展示下 部分API 的使用:

package edu.youzg.about_io.about_file.core.Test;

import edu.youzg.about_io.about_file.core.FanInfo;

import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Properties; public class Test { public static void main(String[] args) throws IOException, ClassNotFoundException {
Properties properties = new Properties();
properties.setProperty("name","Kujo Jotaro");
properties.setProperty("attribute","Star Platinum");
properties.setProperty("uncle","Higashikata Jousuke");
//把 属性集合中的数据,保存到配置文件中
properties.store(new FileWriter("JoJo.properties"),null); //根据“键”,获得“值”的信息
String property = properties.getProperty("grandfather");
System.out.println(property==null ? "没存储" : property);
property = properties.getProperty("grandfather", "JOSEPH JOESTAR");
System.out.println(property==null ? "没存储" : property); //获取整个.properties文件的信息
properties.load(new FileReader("JoJo.properties"));
System.out.println(properties);
} }

那么,本人来展示下 运行结果 和 生成的文件:

那么,有关 Properties类 的知识点,在这里就基本上讲解完了!

(本人 I/O流总集篇 博文链接:https:////www.cnblogs.com/codderYouzg/p/12418404.html

详解 Properties类的更多相关文章

  1. unity3D游戏开发之详解Animation类和Animator类

    详解Animator类和Animation类 链接: http://wenku.baidu.com/link?url=SiaUYcdrNYjOYrWVDJSKGAYdJOntMTOhsVJtyBk2i ...

  2. 【python进阶】详解元类及其应用1

    前言 元类在python中是很重要的一部分,我将分两次去讲解元类及其应用,此篇为详解元类及其应用第一篇,下面开始今天的说明~~~ 1. 类也是对象 在⼤多数编程语⾔中,类就是⼀组⽤来描述如何⽣成⼀个对 ...

  3. 【python进阶】详解元类及其应用2

    前言 在上一篇文章[python进阶]详解元类及其应用1中,我们提到了关于元类的一些前置知识,介绍了类对象,动态创建类,使用type创建类,这一节我们将继续接着上文来讲~~~ 5.使⽤type创建带有 ...

  4. Unity3D - 详解Quaternion类(二)

    OK,不做引子了,接上篇Unity3D - 详解Quaternion类(一)走起! 四.Quaternion类静态方法 Quaternion中的静态方法有9个即:Angle方法.Dot方法.Euler ...

  5. Unity3D - 详解Quaternion类(一)

    一.简介 Quaternion又称四元数,由x,y,z和w这四个分量组成,是由爱尔兰数学家威廉·卢云·哈密顿在1843年发现的数学概念.四元数的乘法不符合交换律.从明确地角度而言,四元数是复数的不可交 ...

  6. Kotlin——最详解的类(class)的使用

    在任何一门面向对象编程的语言里,类(class)是非常基础.但也是非常重要的一项组成,通俗的说就是万般皆对象,而所说的对象就是我们生成的类.Kotlin也是如此,下面详细为大家介绍Kotlin中的类的 ...

  7. IOC和AOP使用扩展之AOP详解实现类

    摘要:   “Depend on yourself” is what nature says to every man.  Parents can help you. Teachers can hel ...

  8. 详解 Arrays类

    请关注本人博文--<详解 普通数组 -- Arrays类 与 浅克隆> Arrays类: 概述: 针对数组进行操作的工具类.它提供了对于数组的值的排序.查找等功能. 现在,本人来展示一下A ...

  9. 详解 Collections类

    (请关注 本人"集合总集篇"博文--<详解 集合框架>) 有的同学可能会有这样的疑问 -- Collections类也是集合吗? 答曰:非也! 那为什么要讲解这个类呢? ...

随机推荐

  1. vscode快速生成html模板(vscode快捷键"!"生成html模板)

    问题: 在vscode中新建test.html, 内容是空白的,输入"!",然后按tap键 ,没有生成常见的html模板,也就是如下: 输入! html html:5 DOCTYP ...

  2. Tensorflow系列专题(四):神经网络篇之前馈神经网络综述

    目录: 神经网络前言 神经网络 感知机模型 多层神经网络 激活函数 Logistic函数 Tanh函数 ReLu函数 损失函数和输出单元 损失函数的选择 均方误差损失函数 交叉熵损失函数 输出单元的选 ...

  3. PyTorch Hub发布!一行代码调用最潮模型,图灵奖得主强推

    为了调用各种经典机器学习模型,今后你不必重复造轮子了. 刚刚,Facebook宣布推出PyTorch Hub,一个包含计算机视觉.自然语言处理领域的诸多经典模型的聚合中心,让你调用起来更方便. 有多方 ...

  4. SQL Server Profiler常用功能

    最近因调研Linq to object 和Linq to Entity的数据组合查询问题,需要用到Sql Server Profiler检测在数据上执行的语句,在调试sql语句时,给了很大的帮助. 这 ...

  5. Spring中的设计模式:工厂方法模式

    导读 工厂方法模式是所有设计模式中比较常用的一种模式,但是真正能搞懂用好的少之又少,Spring底层大量的使用该设计模式来进行封装,以致开发者阅读源代码的时候晕头转向. 文章首发于微信公众号[码猿技术 ...

  6. 使用Dism命令对Win7镜像进行操作

    在操作前,我们需要下载Win7部署工具AIK和Win7原版镜像 ★镜像迅雷链接 ed2k://|file|cn_windows_7_ultimate_with_sp1_x64_dvd_u_677408 ...

  7. Java实现3次找到假球

    前言 之前老师让写一个程序,就写了写. 正文 题目要求 程序要求 10个铅球中有一个假球(比其他铅球的重量要轻),用天平三次称出假球. 程序设计思路 第一次使用天平分别称5个球,判断轻的一边有假球:拿 ...

  8. k8s + docker + Jenkins使用Pipeline部署SpringBoot项目时Jenkins错误集锦

    背景 系统版本:CentOS7 Jenkins版本:2.222.1 maven版本:apache-maven-3.6.3 Java版本:jdk1.8.0_231 Git版本:1.8.3.1 docke ...

  9. P1345 [USACO5.4]奶牛的电信(点拆边 + 网络最小割)

    题目描述 农夫约翰的奶牛们喜欢通过电邮保持联系,于是她们建立了一个奶牛电脑网络,以便互相交流.这些机器用如下的方式发送电邮:如果存在一个由c台电脑组成的序列a1,a2,-,a©,且a1与a2相连,a2 ...

  10. Java 配 Shell 等于美酒加咖啡

    化学中我们得知「氢气加氧气在点燃的情况下会生成水」. 生活中我们得知「良辰加美景的情况下会得到千金春宵一刻」. 技术上又何尝不是如此呢?先假设一个场景:BOSS 让你实现一个服务监控的指挥室,能看到每 ...