IO流和集合的交集Properties类的介绍。
Properties类继承了Hashtable,Hashtable实现了Map<K,V>接口。该类的键值对 都是字符串。
Properties的构造方法:Properties pro = new Properties();//创建一个Properties集合。
常用方法: String setProperties(String key,String value);//添加元素,修改元素。
String setProperties(String oldKey,String newValue);//使用需修改的键,在加上新的字符串值就可以了。返回该键的旧值,如果该键不存在时则返回null。
String getPropery(String key);//返回指定键的值。
Set<String> stringPropertyNames();//返回该集合的键集
void list(PrintStream out);//将属性列表输出到指定的输出流,该方法经常使用测试。
void store(OutputStream out,String comments);//将此
Properties
表中的属性列表(键和元素对)写入输出流。
如:
public static void show_3() throws IOException {Properties pro = new Properties();pro.setProperty("zhangsan", "20");pro.setProperty("lisi", "29");pro.setProperty("zhailou", "24");pro.setProperty("wangwu", "25");FileOutputStream fos = new FileOutputStream("info.txt"); //将集合中的数据存到文件中。pro.store(fos, "name_age");}
void load(InputStream inStream);//从输入流中读取键值对。
演示程序:
package Properties;import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.Properties; import java.util.Set;public class PropertiesDemo {/*** @param args* @throws IOException */public static void main(String[] args) throws IOException {/*** Properties集合特点:* 1,该集合中的键和值都是字符串。* 2,集合中的数据可以保存到流中,或者从流中获得。* 该集合经常用于操作以键值对存在的配置文件。*/ // show_1(); // show_2(); // show_3(); // show_4(); // myLoad();xiugai();}public static void xiugai() throws IOException {Properties pro = new Properties();File file = new File("info.txt");if(!file.exists())file.createNewFile();FileReader fr =new FileReader(file);//加载文件中的数据pro.load(fr);//修改文件中的数据pro.setProperty("baiyang", "16");//将修改后的集合存到文件中去。FileWriter fw = new FileWriter(file);pro.store(fw, "xiugaihou");pro.list(System.out);}public static void myLoad() throws IOException {Properties pro = new Properties();BufferedReader bf = new BufferedReader(new FileReader("info.txt"));String line = null;while((line = bf.readLine())!=null){if(line.startsWith("#"))continue;String []pr = line.split("=");pro.setProperty(pr[0], pr[1]);}pro.list(System.out);}public static void show_4() throws IOException {Properties pro = new Properties();FileInputStream fis = new FileInputStream("info.txt");//将文件中的数据加载到集合中。pro.load(fis);pro.list(System.out);}public static void show_3() throws IOException {Properties pro = new Properties();pro.setProperty("zhangsan", "20");pro.setProperty("lisi", "29");pro.setProperty("zhailou", "24");pro.setProperty("wangwu", "25");FileOutputStream fos = new FileOutputStream("info.txt"); //将集合中的数据存到文件中。pro.store(fos, "name_age");}public static void show_2() {//创建集合Properties pro = new Properties();//添加元素。pro.setProperty("zhangsan", "20");pro.setProperty("lisi", "29");pro.setProperty("zhailou", "24");pro.setProperty("wangwu", "25");pro.list(System.out);/*** list结果:通常用于测试。* -- listing properties --zhailou=24zhangsan=20lisi=29wangwu=25*/}public static void show_1() {//创建集合Properties pro = new Properties();//添加元素。pro.setProperty("zhangsan", "20");pro.setProperty("lisi", "29");pro.setProperty("zhailou", "24");pro.setProperty("wangwu", "25");//修改元素pro.setProperty("zahngsan", "10");//取出元素Set<String> names = pro.stringPropertyNames();for(String name:names){String value = pro.getProperty(name);System.out.println(name+" : "+value);}}}
IO流和集合的交集Properties类的介绍。相关推荐
- IO流 (一) ----- 基本概念和FIle类
相关文章: <IO流 (一) ----- 基本概念和File类> <IO流 (二) ----- 文件流> <IO流 (三) ----- 字符流和字符缓冲流> < ...
- java集合——java.util.Properties类
[0]README 0.1)以下全文转自 : http://trans.blog.51cto.com/503170/110227/ [1]认识properties文件 1. properties文件是 ...
- java体系的四大基类_Java中的io流学习(了解四大基类和基本步骤)
Java中io流四大基类及io流操作四大基本步骤 io流:(input/output)即输入输出流.面向对象的思想之一是面向接口编程,面向父类编程,也就是多态.所以学好基类(父类)很重要. 分类 按处 ...
- JAVA之IO流、异常、File文件类
1 IO流 1.1IO流概述及其前奏 1.1.1IO流概述 IO流用来处理设备之间的数据传输,上传文件和下载文件 . 1.1.2IO流前奏 了解Io流前必须先了解异常和File类,因为File表示的是 ...
- java.util.Properties类的介绍-配置文件的读写【-Z-】
简介:java.util.Properties是对properties这类配置文件的映射.支持key-value类型和xml类型两种. #打头的是注释行,Properties会忽略注释.允许只有key ...
- IO流(八)之InputStreamReader类与OutputStreamWriter类
InputStreamReader类与OutputStreamWriter类是字节流通向字符流的桥梁,使用指定charset读写字节并解码为字符. 1.InputStreamReader类 1.1构造 ...
- IO流(六)之CharArrayReader类与CharArrayWriter类
CharArrayReader类与CharArrayWriter类分别是字符数组输入流和字符数组输出流类.用来进行字符数组输入输出操作. 1.CharArrayReader类 1.1构造器 CharA ...
- 接收字节流_Java之IO流、属性配置文件
IO流 之前稍微提了下java.io包下的File类,今天我们就深入来看下java.io包下常用的类,也就是IO流了. IO流很多,都掌握是不太可能的,这里作者列出了接下来要看的IO流.那么什么是IO ...
- Java基础(28)数据输入输出流、内存操作流、打印流、随机访问流、序列化与反序列化流、Properties类(集合)
1. 数据输入输出流 1. 数据输入输出流的概述: (1)以Stream结尾的,一般都是字节流 (2)数据输入流(DataInputStream):数据输入流允许应用程序以与机器无关方式从底层输入流中 ...
最新文章
- 【C++】clipp 一个命令行参数解析器
- Android程序反编译
- 创建存储过程批量插入数据
- Java基础01 从HelloWorld到面向对象
- 陆鲸接入云信,司机与货主高效沟通
- vc++怎么可以直接刷掉MBR?搞笑的吧
- 前端学习(3168):react-hello-react之...扩展运算符
- 打不开磁盘“D:\CentOS7\CentOS7.vmdk”或它所依赖的某个快照磁盘。
- Problem G: C语言习题 医生值班
- ASP.NET企业开发框架IsLine FrameWork系列之七--AppLogProvider日志框架(上)
- elasticsearch 导入基础数据并索引之 geo_shape
- android组件化数据生命周期,Android组件化开发实践(七):开发常见问题及解决方案...
- PDA开发从入门到精通
- 【前端安全】web缓存投毒
- 1.1股票数据预处理练习
- 路由器连接上但上不了网如何操作
- 如何用电脑调试安卓手机浏览器上的网页
- PowerManagerService类大致解读
- 和平精英清明节服务器维修时间,和平精英开服时间/和平精英几点能玩 和平精英常见问题解答汇总...
- Centos6.5离线安装中文输入法