繼承了Hashtable:
public class Properties extends Hashtable<Object,Object>
表示了一個持久的屬性集,可保存在流中或從流中加載。
此集合是唯一和IO流相結(jié)合的集合。
一:
? 可以使用集合中的方法load,把硬盤中保存的文件(鍵值對),讀取到集合中使用;
void load(Reader reader):
void load(InputStream inStream);
參數(shù):
InputStream inStream:字節(jié)輸入流,不能讀取含中文的鍵值對;
Reader reader:字符輸入符,能讀取含有中文的鍵值對;
使用步驟:
1:創(chuàng)建Properties集合對象;
2:使用Properties集合對象中的方法load讀取保存鍵值對的文件;
3:遍歷Properties集合;
注意:
1:存儲鍵值對的文件中,鍵值對默認的連接符號可以使用=,空格(其他符號);
2:在存儲鍵值對的文件種,可以使用#進行注釋,該注釋掉的鍵值對不會再被讀??;
3:存儲鍵值對的文件中,鍵與值默認都是字符串,不用再加引號。
二:可以使用Properties集合中的方法store,把集合中的臨時數(shù)據(jù),持久化寫入到硬盤中存儲。
void store(OutputStream out,String comments);
void store(Writer writer,String string comments);
參數(shù):
1:OutputStream? out:字節(jié)輸出流,不能寫中文;
2:Writer writer:字符輸出流,可以寫中文
3:String comments:注釋,用來解釋說明保存的文件是做什么用的,不能使用中文,會產(chǎn)生亂碼,默認是unicode編碼,一般使用""空字符串
使用步驟:
1:創(chuàng)建Properties集合對象,添加數(shù)據(jù);
2:創(chuàng)建字節(jié)輸出流/字符輸出流對象,構(gòu)造方法中綁定要輸出的目的地;
3:使用Properties集合中的方法store,把集合中的臨時數(shù)據(jù),持久化邪惡如硬盤中存儲。
4:釋放資源。
三:使用Properties集合存儲數(shù)據(jù),遍歷取出Properties集合中的數(shù)據(jù)
Properties是一個雙列集合,key和value默認都是字符串
Properties集合有一些操作字符串的特有方法;
Object? setProperty(String key,String value)調(diào)用Hashtable的方法put;
String getProperty(String key):通過key找到value值,此方法相當于Map集合中的get(key)方法;
Set<String>? stringPropertyNames():返回此列表中的鍵集,其中該鍵機器對應的只是字符串,此方法相當于Map集合中的KeySet方法。