---------------------- ASP.Net+Unity開發、.Net培訓、期待與您交流! ----------------------
一, Properties對象
Properties是Hashtable的子類,也就是說它具備集合的特點,而且它裏面存儲的鍵值對者是字符串,不需要泛型。是集合中和IO技術相結合的集合容器。
該對象的特點:可以用於鍵值對形式的配置文件,那麼在加載數據時,需要數據有固定格式:鍵=值 .配置文件可以實現應用程序數據的共享
二,Properties對象的應用:
方法:
獲取與設置:
String getProperty(String key)
:返回此key 所對的值。改變的是內存的方法
void store(OutputStream out ,String comments(註釋)):將修改以後的鍵值寫入到指定的文件中的,並加入註釋
void stort(Writer out,String comments)將修改以後的鍵值寫入到指定的文件中的,並加入註釋(JDK1.6後)
Set<String> stringPropertyNames(): 返回key的set集合(JDK1.6後)
Object setProperty(String key,String value):設置鍵和值
與流相關的方法:
void load(InputStream inStream):將此流關聯的文件加載進Properties集合中 拋出IOException
void load(Reader reader):將此流關聯的字符文件加載進Properties集合中 拋出IOException (JDK1.6後)
void list(PrintStream out): 將屬性列表輸出到指定的輸出流。
void list(PintWriter out): 將屬性列表輸出到指定的輸出流。
三,load方法的原理 :
將一個文件於一個讀取流關聯,然後對讀取的字符進行切割,然後在存入到Properties對象中
代碼:
//告訴我一個指定的文件名,返回一個存有信息的Properties集合
public static Properties loadTheroy(String fileName)throws IOException {
BufferedReader bufr = new BufferedReader(new FileReader(fileName));
Properties prop = new Properties();
String info = null;
while((info = bufr.readLine()) != null){
String[] infos = info.split("=")
;
prop.setProperty(infos[0],infos[1])
;
}
bufr.close();
return prop;
}
---------------------- ASP.Net+Unity開發、.Net培訓、期待與您交流! ----------------------