java 21 - 14 Properties类
类 Properties
Properties 类表示了一个持久的属性集。Properties 可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。
注意:Properties是Hashtable的子类,说明是一个Map集合。但是,它后面没有<>,说明它不是泛型类
首先把它当成Map使用看看:
Properties prop = new Properties();
// 添加元素
prop.put("it002", "hello");
prop.put("it001", "world");
prop.put("it003", "java");
// System.out.println("prop:" + prop);
// 遍历集合
Set<Object> set = prop.keySet();
for (Object key : set) {
Object value = prop.get(key);
System.out.println(key + "---" + value);
}
Properties类的特殊方法:
A、public Object setProperty(String key,String value):添加元素
B、public Set<String> stringPropertyNames():获取所有的键的集合
C、public String getProperty(String key):获取元素
示例:
public static void main(String[] args) {
//创建集合对象
Properties prop = new Properties();
//public Object setProperty(String key,String value):添加元素
prop.setProperty("哈士奇", "二哈");
prop.setProperty("萨摩耶", "小萨");
prop.setProperty("加菲猫", "胖子");
//public Set<String> stringPropertyNames():获取所有的键的集合
Set<String> s = prop.stringPropertyNames();
//public String getProperty(String key):获取元素
//遍历键集合
for(String key : s){
String result = prop.getProperty(key);
System.out.println(result);//打印出来的是值
System.out.println(key+"----"+result);//打印出来的是键值对
}
}
Properties集合和IO流的结合使用 (必须是Properties集合)
A、public void load(Reader reader):把文件中的数据读取到集合中
B、public void store(Writer writer,String comments):把集合中的数据存储到文件
首先试下A:public void load(Reader reader):把文件中的数据读取到集合中(文件中的数据必须是键值对的形式《“xxx=yyy”》)
private static void myLoad() throws IOException {
Properties prop = new Properties();
// public void load(Reader reader):把文件中的数据读取到集合中
// 注意:这个文件的数据必须是键值对形式
Reader r = new FileReader("prop.txt");
prop.load(r);
r.close();
System.out.println("prop:" + prop);
}
prop.txt中的内容是:哈士奇=二哈
萨摩耶=小萨 这样的键值对形式的数据 再试下B:public void store(Writer writer,String comments):把集合中的数据存储到文件
private static void myStore() throws IOException {
// 创建集合对象
Properties prop = new Properties();
prop.setProperty("哈士奇", "二哈");
prop.setProperty("萨摩耶", "小萨");
prop.setProperty("加菲猫", "胖子");
//public void store(Writer writer,String comments):把集合中的数据存储到文件
Writer w = new FileWriter("name.txt");
prop.store(w, "helloworld");
w.close();
}
生成的name.txt文件中,里面的内容也是跟prop.txt中的内容格式一样,都是键值对
实际应用:
在玩单机版游戏时,开始运行游戏,会自动生成一个游戏的数据文件夹。而里面有个文件就是存储你玩的游戏角色所具备的属性
例如:玩三国群英传,你会拥有武将,武将又会拥有武器
那么,当你拥有这个武将的时候,你点击保存,那文件里面就会存储一个键值对:吕布=1
而当你拥有了一把武器后,也会存储一个键值对:“菜刀=1”
。。。Properties集合是个持久的属性集合
java 21 - 14 Properties类的更多相关文章
- Java学习:Properties类
Java学习:Properties类 学习目标 认识properties文件,理解其含义,会正确创建properties文件. 会使用java.util.Properties类来操作propertie ...
- Java中的Properties类
目录 Java中的Properties类 前言 主要方法 读取Properties文件 相关实例 Java中的Properties类 前言 Java中的Properties类属于配置文件,以键值对的方 ...
- java编程中Properties类的具体作用和使用
如果不熟悉 java.util.Properties类,那么现在告诉您它是用来在一个文件中存储键-值对的,其中键和值是用等号分隔的.(如清单 1 所示).最近更新的java.util.Properti ...
- Java读写配置文件——Properties类的简要使用笔记
任何编程语言都有自己的读写配置文件的方法和格式,Java也不例外. 在Java编程语言中读写资源文件最重要的类是Properties,功能大致如下: 1. 读写Properties文件 2. 读写XM ...
- java编程中Properties类的具体作用和使用!
如果不熟悉 java.util.Properties类,那么现在告诉您它是用来在一个文件中存储键-值对的,其中键和值是用等号分隔的.(如清单 1 所示).最近更新的java.util.Properti ...
- Java API 之 Properties 类
1.简介 在项目中我们经常看到一种格式极其干净的配置文件,如:config.properties.在Java的体系结构中也提供了API对properties文件进行读取和写入等操作,即:Propert ...
- JAVA基础之Properties类、序列化流及打印流、commons-IO
个人理解: Properties类是个存储String类型的键值对的集合类,可以用其存储一些关键的账号密码什么的,同时后面的注释可以很好的帮助理解,但是需要注意的是其文件中不能出现其他的符号:序列化与 ...
- day1 java基础回顾- Properties类与配置文件
Properties配置文件说明 Properties类对应.properties文件.文件内容是键值对,键值对之间使用"="或空格隔开.开头是"#"的表示注释 ...
- Java 程序 关于Properties 类使用Store方法时不能会覆盖以前Properties 文件的内容
F:\\Demo.properties 文件内容: #\u65B0\u589E\u4FE1\u606F#Wed Sep 14 11:16:24 CST 2016province=广东tt=近蛋city ...
随机推荐
- C#内存占用大量资源的解决办法
昨天,独立完成了一个项目,一直运行起,起初运行内存为15Mb左右,但是发现内存以每秒2Mb的速度增加,吓了我一跳(注:我实习生,我的工作中第一个项目).从头找寻对象,再来dispose,弄得我晕头转向 ...
- 如何给span设置高度宽度?
内容提要:给Span设置高度和宽度后没有作用.本文介绍了如何如何给span设置高度宽度. CSS模型中经常用的容器是DIV和span. 给Span设置高度和宽度后没有作用. <style typ ...
- [iOS] 使用xib做为应用程序入口 with Code
[iOS] 使用xib做为应用程序入口 with Code 前言 开发iOS APP的时候,使用storyboard能够快速并且直觉的建立用户界面.但在多人团队开发的情景中,因为storyboard是 ...
- [ASP.NET MVC] 使用Bootstrap套件
[ASP.NET MVC] 使用Bootstrap套件 前言 在开发Web项目的时候,除了一些天赋异禀的开发人员之外,大多数的开发人员应该都跟我一样,对于如何建构出「美观」的用户接口而感到困扰.这时除 ...
- [WP8] Binding时,依照DataType选择DataTemplate
[WP8] Binding时,依照DataType选择DataTemplate 范例下载 范例程序代码:点此下载 问题情景 在开发WPF.WP8...这类应用程序的时候,透过Binding机制搭配Da ...
- 高效构建Web应用 教你玩转Play框架 http://www.anool.net/?p=577
Play 框架是一个完整的Web应用开发框架,覆盖了Web应用开发的各个方面.Play 框架在设计的时候借鉴了流行的 Ruby on Rails 和 Grails 等框架,又有自己独有的优势.使用 P ...
- Play Framework框架 JPA惯用注解
Play Framework框架 JPA常用注解 1.@Entity(name=”EntityName”) 必须 ,name 为可选 , 对应数据库中一的个表 2.@Table(name=”" ...
- gulp学习笔记--简单入门
一.准备工作 1.gulp是基于nodeJS的前端构建工具,所以全局安装nodeJS 2.利用npm全局安装gulp. npm install -g gulp 3.在项目根目录下新建文件package ...
- Spring概述
layout: post title: Spring概述 tags: [Java,Spring,IOC,AOP] --- Spring是一个开源的轻量级Java SE(Java 标准版本)/Java ...
- Mac显示隐藏文件的终端命令
显示:defaults write com.apple.finder AppleShowAllFiles -bool true隐藏:defaults write com.apple.finder Ap ...