Properties类
public class Properties extends <,>
Properties
类表示了一个持久的属性集。Properties
可保存在流中或从流中加载。属性列表中每个键及其对应值都是一个字符串。
常用方法:
String getProperty( key) | 用指定的键在此属性列表中搜索属性。 |
String getProperty(key,defaultValue) | 用指定的键在属性列表中搜索属性。 |
void list( out) | 将属性列表输出到指定的输出流。 |
void list(out) | 将属性列表输出到指定的输出流。 |
void load(inStream) | 从输入流中读取属性列表(键和元素对)。 |
void load(reader) | 按简单的面向行的格式从输入字符流中读取属性列表(键和元素对)。 |
void store( out, comments) | 以适合使用 load(InputStream) 方法加载到 Properties 表中的格式,将此 Properties 表中的属性列表(键和元素对)写入输出流。 |
void store( writer, comments) | 以适合使用 load(Reader) 方法的格式,将此 Properties 表中的属性列表(键和元素对)写入输出字符。 |
setProperty( key, value) | setProperty( key, value) |
1、
1 import java.util.Map; 2 import java.util.Properties; 3 import java.util.Set; 4 5 public class PropertiesDemo { 6 public static void main(String[] args) { 7 Properties pro=new Properties(); 8 pro.put("001", "张三"); 9 pro.put("002", "李四");10 pro.put("003", "王五");11 Set
2、Properties与IO流结合
(1)与输出流结合使用:
1 import java.io.FileNotFoundException; 2 import java.io.PrintWriter; 3 import java.util.Properties; 4 5 public class PropertiesIODemo { 6 public static void main(String[] args) throws FileNotFoundException { 7 //创建属性列表 8 Properties pro=new Properties(); 9 //添加映射关系10 pro.setProperty("001", "张三");11 pro.setProperty("002", "李四");12 pro.setProperty("003", "王五");13 //创建打印流对象14 PrintWriter pw=new PrintWriter("pro.txt");15 16 pro.list(pw);17 18 pw.close();19 20 }21 }
结果:在项目根目录下生成pro.txt文件:
(2)与输入流结合使用:
1 import java.io.FileNotFoundException; 2 import java.io.FileReader; 3 import java.io.IOException; 4 import java.util.Properties; 5 6 public class PropertiesIODemo { 7 public static void main(String[] args) throws IOException { 8 //method(); 9 //创建属性列表10 Properties pro=new Properties();11 //创建输入流对象12 FileReader fr=new FileReader("pro.txt");13 pro.load(fr);14 fr.close();15 System.out.println(pro); 16 }17 }
结果:
list只能接收打印流,store和load所有流都可以接收
1 import java.io.FileWriter; 2 import java.io.IOException; 3 import java.util.Properties; 4 5 public class PropertiesIODemo { 6 public static void main(String[] args) throws IOException { 7 //创建属性列表 8 Properties pro=new Properties(); 9 //添加映射关系10 pro.setProperty("001", "张三");11 pro.setProperty("002", "李四");12 pro.setProperty("003", "王五");13 //创建输出流对象14 FileWriter fw=new FileWriter("prop.txt");15 pro.store(fw, "hello");16 fw.close();17 }18 }
结果: