Java學習

          java,spring,structs,hibernate,jsf,ireport,jfreechart,jasperreport,tomcat,jboss -----本博客已經搬家了,新的地址是 http://www.javaly.cn 如果有對文章有任何疑問或者有任何不懂的地方,歡迎到www.javaly.cn (Java樂園)指出,我會盡力幫助解決。一起進步

           

          java中Properties類的使用

          package com.adrop.util;

           

          import Java.io.*;

          import java.util.Properties;

          import javax.servlet.http.*;

          import javax.servlet.*;

          import javax.servlet.jsp.*;

           

          public class PropertiesUtil {

            private String fileName;

            private Properties p;

            private FileInputStream in;

          private FileOutputStream out;

            /**

             * 根據傳進的文件名載入文件

             * @param fileName String

             */

            public PropertiesUtil(String fileName) {

              this.fileName=fileName;

              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 (Exception e) {

                System.err.println("讀取配置文件config.properties錯誤!!");

                e.printStackTrace();

              }

            }

           

            /**

             * 配置文件一律為config.propertities,并且統一放在web應用的根目錄下。

             * @return String

             */

            public static String getConfigFile(HttpServlet hs) {

           

              return getConfigFile(hs,"config.properties");

            }

            /**

             * 在servlet中使用,直接用this作為參數,HttpServlet類型

             * 根據配置文件名從當前web應用的根目錄下找出配置文件

             * @param hs HttpServlet

             * @param configFileName String配置文件名字

             * @return String

             */

            public static String getConfigFile(HttpServlet hs, String configFileName) {

              String configFile = "";

              ServletContext sc = hs.getServletContext();

              configFile = sc.getRealPath("/" + configFileName);

              if (configFile == null configFile.equals("")) {

                configFile = "/" + configFileName;

              }

              return configFile;

            }

            /**

             * jsp中用pageContext作參數

             * @param hs PageContext

             * @param configFileName String 配置文件名字

             * @return String

             */

            public static String getConfigFile(PageContext hs, String configFileName) {

              String configFile = "";

              ServletContext sc = hs.getServletContext();

              configFile = sc.getRealPath("/" + configFileName);

              if (configFile == null configFile.equals("")) {

                configFile = "/" + configFileName;

              }

              return configFile;

            }

           

            /**

             * 列出所有的配置文件內容

             */

            public void list() {

              p.list(System.out);

            }

           

            /**

             * 指定配置項名稱,返回配置值

             * @param itemName String

             * @return String

             */

            public String getValue(String itemName){

              return p.getProperty(itemName);

            }

           

            /**

             * 指定配置項名稱和默認值,返回配置值

             * @param itemName String

             * @param defaultValue String

             * @return String

             */

            public String getValue(String itemName,

                                   String defaultValue){

              return p.getProperty(itemName,defaultValue);

            }

           

            /**

             * 設置配置項名稱及其值

             * @param itemName String

             * @param value String

             */

            public void setValue(String itemName,String value){

              p.setProperty(itemName,value);

              return;

            }

           

            /**

             * 保存配置文件,指定文件名和抬頭描述

             * @param fileName String

             * @param description String

             * @throws Exception

             */

            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);

              }

            }

           

            /**

             * 保存配置文件,指定文件名

             * @param fileName String

             * @throws Exception

             */

            public void saveFile(String fileName)

                throws Exception {

              saveFile(fileName,"");

            }

           

            /**

             * 保存配置文件,采用原文件名

             * @throws Exception

             */

            public void saveFile() throws Exception {

              if(fileName.length()==0)

                throw new Exception

                    ("需指定保存的配置文件名");

              saveFile(fileName);

            }

            /**

             * 刪除一個屬性

             * @param value String

             */

            public void deleteValue(String value){

              p.remove(value);

            }

            /**

             * main method for test

             * @param args String[]

             */

            public static void main(String[] args) {

              String file = "f:\\p.properties";

              PropertiesUtil pu = new PropertiesUtil(file);

              pu.list();

            }


          private String getParam(String file) {
             Properties p = new Properties();
             try {
              InputStream in = getClass().getResourceAsStream(file);
              p.load(in);
              if (in != null)
               in.close();

             } catch (Exception e) {
              System.out.println("file not found");
             } finally {
              return p.getProperty("ip");
             }

          }





          }

          posted on 2008-11-26 17:03 找個美女做老婆 閱讀(317) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          統計

          公告

          本blog已經搬到新家了, 新家:www.javaly.cn
           http://www.javaly.cn

          常用鏈接

          留言簿(6)

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 五指山市| 靖江市| 时尚| 南皮县| 甘孜| 石棉县| 高青县| 南乐县| 上杭县| 措勤县| 沙雅县| 遂溪县| 乌审旗| 德钦县| 葵青区| 鄂伦春自治旗| 峡江县| 翁源县| 荔波县| 沿河| 建平县| 永康市| 峨眉山市| 仲巴县| 巴林右旗| 德钦县| 平武县| 汝州市| 徐闻县| 临安市| 彩票| 岢岚县| 双辽市| 渭南市| 红安县| 定陶县| 广平县| 庆城县| 高陵县| 镇赉县| 舒城县|