Java XML Parser for Global Configure file

1 篇文章 0 订阅

<?xmlversion="1.0" encoding="iso-8859-1"?>

<root>

       <modulename="tms">

             <section name="testdata db">

                    <param name="ip">X.X.X.X</param>

                    <param name="port">1433</param>

                    <param name="auth">sql</param>

                    <param name="username">sa</param>

                    <param name="password">XXXX</param>

                    <param name="database">tms</param>

             </section>

             <section name="iebrowser">

                    <param name="class">com.XXXX.mobile.env.IExplorer</param>

                    <param name="browserName">IE8</param>

                    <param name="browserType">ie</param>

                    <param name="browserBinary"></param>

                    <param name="browserProfile"></param>                 

             </section>   

             <section name="firefoxbrowser">

                    <param name="class">com.XXXX.mobile.env.Firefox</param>

                    <param name="browserName">Firefox16</param>

                    <param name="browserType">firefox</param>

                    <param name="browserBinary">C:\Program Files (x86)\Mozilla Firefox\firefox.exe</param>

                    <paramname="browserProfile">C:\Users\Administrator\AppData\Local\Mozilla\Firefox\Profiles\5ylcw2n0.default</param>                                        

             </section>   

       </module>

</root>

 

public static Map<String,String> parse(String filename, String section) throws Exception {

             Map<String, String> container = new HashMap<String, String>();

             File file = new File(filename);

             DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();

             DocumentBuilder db = dbf.newDocumentBuilder();

             Document doc = db.parse(file);

             doc.getDocumentElement().normalize();

             NodeList nodeLst = doc.getElementsByTagName("section");

 

             for (int s = 0; s <nodeLst.getLength(); s++){                     

                    Node fstNode =nodeLst.item(s);                       

                    Element fstElmnt = (Element) fstNode;

                    if(fstElmnt.getAttribute("name").equals(section)) {

                          NodeList fstNmElmntLst = fstElmnt.getElementsByTagName("param");

                           for (int j = 0; j <fstNmElmntLst.getLength(); j++) {

                                 Element fstNmElmnt = (Element) fstNmElmntLst.item(j);

                                 container.put(fstNmElmnt.getAttribute("name"),fstNmElmnt.getTextContent());

                          }

                          break;

                    }

             }

             return container;

       }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值