中文字幕在线观看,亚洲а∨天堂久久精品9966,亚洲成a人片在线观看你懂的,亚洲av成人片无码网站,亚洲国产精品无码久久久五月天

java對properties文件進(jìn)行解析

2018-07-20    來源:open-open

容器云強(qiáng)勢上線!快速搭建集群,上萬Linux鏡像隨意使用
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Enumeration;
import java.util.Properties;
 
public class PropertiesUtil {
    private String filename = "e:/temp/config.properties";
//  private String filename = "config.properties";
    private Properties p;
    private FileInputStream in;
    private FileOutputStream out;
 
    public PropertiesUtil() {
        File file = new File(filename);
        try {
            in = new FileInputStream(file);
            p = new Properties();
            p.load(in);
            in.close();
        } catch (FileNotFoundException e) {
            System.err.println("配置文件config.properties找不到!");
            e.printStackTrace();
        } catch (IOException e) {
            System.err.println("讀取配置文件config.properties錯(cuò)誤!");
            e.printStackTrace();
        }
    }
 
    public String getValue(String itemName) {
        return p.getProperty(itemName);
    }
 
    public String getValue(String itemName, String defaultValue) {
        return p.getProperty(itemName, defaultValue);
    }
 
    public void setValue(String itemName, String value) {
        p.setProperty(itemName, value);
    }
 
    public void saveFile(String filename, String description) throws Exception {
        try {
            File f = new File(filename);
            out = new FileOutputStream(f);
            p.store(out, description);
            out.close();
        } catch (IOException ex) {
            throw new Exception("無法保存指定的配置文件:" + filename);
        }
    }
 
    public void getNameValuePair() {
         
        Enumeration<Object> enumKeys= p.keys();
        while(enumKeys.hasMoreElements()) {
             
            String key= (String)enumKeys.nextElement();
            try {
                 
                //p.getProperty(key)本身解析的時(shí)候可能已經(jīng)做過一次轉(zhuǎn)碼轉(zhuǎn)碼方式可能就是ISO8859-1所以得先通過這種轉(zhuǎn)碼過來
                System.out.println(key+"--->"+new String(p.getProperty(key).getBytes("ISO8859-1"), "gbk"));
            } catch (UnsupportedEncodingException e) {
                 
                e.printStackTrace();
            }
        }
    }
 
    public void saveFile(String filename) throws Exception {
        saveFile(filename, "");
    }
 
    public void saveFile() throws Exception {
        if (filename.length() == 0)
            throw new Exception("需指定保存的配置文件名");
        saveFile(filename);
    }
 
    public void deleteValue(String value) {
        p.remove(value);
    }
 
    public static void main(String[] A) {
 
        PropertiesUtil propertiesUtil = new PropertiesUtil();
        propertiesUtil.getNameValuePair();
    }
 
}
//另外有人說properties文件的寫法:name=value還有人說name:value有人說只能是其中一種其實(shí)都行properties源碼有解釋。

標(biāo)簽:

版權(quán)申明:本站文章部分自網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系:west999com@outlook.com
特別注意:本站所有轉(zhuǎn)載文章言論不代表本站觀點(diǎn)!
本站所提供的圖片等素材,版權(quán)歸原作者所有,如需使用,請與原作者聯(lián)系。

上一篇:Java時(shí)間日期格式化工具類

下一篇:C++ 實(shí)現(xiàn)判斷一個(gè)輸入日期是星期幾,是一年中的第幾天