java中Properties类的使用

tangpingyuq

tangpingyuq

2016-02-19 20:05

关注图老师设计创意栏目可以让大家能更好的了解电脑,知道有关于电脑的更多有趣教程,今天给大家分享java中Properties类的使用教程,希望对大家能有一点小小的帮助。

  

package com.adrop.util;

?XML:namespace prefix = o ns = "urn:schemas-microsoft-com:Office:office" /> 

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);//保存文件

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

      out.close();

    }

    catch (IOException ex) {

      throw new Exception

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

          ("无法保存指定的配置文件:"+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

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

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

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

  }

}

  
  


展开更多 50%)
分享

猜你喜欢

java中Properties类的使用

编程语言 网络编程
java中Properties类的使用

如何使用Java中的Date和Calendar类

编程语言 网络编程
如何使用Java中的Date和Calendar类

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

java遍历properties文件操作指南

编程语言 网络编程
java遍历properties文件操作指南

在JAVA中定义类的结构

编程语言 网络编程
在JAVA中定义类的结构

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

浅析Java中Data类的应用

Java JAVA基础
浅析Java中Data类的应用

Java中 shuffle 算法的使用

编程语言 网络编程
Java中 shuffle 算法的使用

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

AJAX、AJAX实例及AJAX源代码

AJAX、AJAX实例及AJAX源代码

用Java编写的记事本程序(1)

用Java编写的记事本程序(1)
下拉加载更多内容 ↓