posts - 14,  comments - 37,  trackbacks - 0
          以下這個類是在JAVA中如何讀取Properties配置文件:
            1package cn.com.cinda.rtx.common;
            2
            3import java.io.BufferedReader;
            4import java.io.FileReader;
            5import java.io.IOException;
            6import java.util.HashMap;
            7import java.util.Properties;
            8import java.util.*;
            9import java.io.*;
           10
           11
           12public class IniReader {
           13    protected LinkedHashMap sections; //使用
           14
           15    public IniReader() {
           16        super();
           17        sections = new LinkedHashMap();
           18    }

           19
           20    public LinkedHashMap getSections() {
           21        return sections;
           22    }

           23
           24    public LinkedHashMap getSection(String sectionName) {
           25        if (sections != null{
           26            return (LinkedHashMap) sections.get(sectionName);
           27        }
           else {
           28            return null;
           29        }

           30    }

           31
           32    public String get(String sectionName, String key) {
           33        Map section1 = (Map) sections.get(sectionName);
           34        if (section1 == null{
           35            return "";
           36        }

           37        return (String) section1.get(key);
           38    }

           39
           40
           41    public void load(String fileName) throws FileNotFoundException {
           42        InputStream is = null;
           43        try {
           44            is = new FileInputStream(fileName);
           45            load(is);
           46        }
           catch (IOException e) {
           47            e.printStackTrace();
           48        }
           finally {
           49            if (is != null{
           50                try {
           51                    is.close();
           52                }
           catch (IOException e1) {}
           53            }

           54        }

           55    }

           56
           57    public void load(InputStream is) throws IOException {
           58        BufferedReader reader = new BufferedReader(new InputStreamReader(is));
           59        String line = null;
           60        String lastSectionName = null;
           61        while ((line = reader.readLine()) != null{
           62            line = line.trim();
           63            if (line.startsWith("#")) {
           64                continue;
           65            }

           66            if (line.startsWith("["&& line.endsWith("]")) {
           67                lastSectionName = line.trim().substring(1, line.length() - 1);
           68                sections.put(lastSectionName, new LinkedHashMap()); //創建一個section
           69            }
           else if (line.length() == 0{
           70                continue;
           71            }
           else {
           72                if (lastSectionName != null{
           73                    Map section = (Map) sections.get(lastSectionName);
           74                    int index = line.indexOf('=');
           75                    String key = index > 0 ? line.substring(0, index) : line; //如果沒有等號,直接做key和value
           76                    String value = index > 0 ? line.substring(index + 1) : line;
           77                    section.put(key, value);
           78                }

           79            }

           80        }

           81    }

           82
           83    public static void main(String[] args) {
           84        IniReader iniReader = new IniReader();
           85        try {
           86          FileInputStream fileInputStream = new FileInputStream("/etc/portalconf/jmsconfig.property");
           87            iniReader.load(fileInputStream);
           88            Map sections = iniReader.getSection("serverconf");
           89            java.util.Iterator it = sections.keySet().iterator();
           90            while (it.hasNext()) {
           91                String key = (String) it.next();
           92                System.out.println(key + "=" + sections.get(key));
           93            }

           94
           95        }
           catch (IOException e) {
           96            e.printStackTrace();
           97        }

           98    }

           99}

          100
          101
          102
          posted on 2007-06-26 14:34 冰封的愛 閱讀(1694) 評論(0)  編輯  收藏 所屬分類: 技術
          <2025年7月>
          293012345
          6789101112
          13141516171819
          20212223242526
          272829303112
          3456789

          常用鏈接

          留言簿(3)

          隨筆檔案

          文章分類

          文章檔案

          相冊

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 蓬溪县| 广南县| 南郑县| 南和县| 阿尔山市| 黔东| 天峻县| 鹿邑县| 和平县| 西安市| 梁河县| 山阳县| 长寿区| 冕宁县| 英山县| 新乡县| 安吉县| 平陆县| 中江县| 章丘市| 墨江| 江津市| 苍山县| 车致| 湄潭县| 和林格尔县| 时尚| 贵州省| 连江县| 宁武县| 政和县| 乡城县| 云林县| 老河口市| 额敏县| 托克托县| 京山县| 工布江达县| 汉沽区| 唐海县| 南投市|