读取ini文件

import java.io.*;
import java.util.*;

 

/**
 *  读取程序配置信息
 *  文件格式
 *      注释行: 以*开始的行
 *      配置行:item#value
 */

public class ConfigFile {
  private BufferedReader reader;
  private Hashtable m_HashTable;

  private String m_configfile;

 

  public ConfigFile(String inifilename) {
   m_configfile = inifilename;
   m_HashTable = new Hashtable(15);
    readConfig();
  }


  public String get(String item){
     return  (String)m_HashTable.get(item);
  }
  public int getInt(String item,int defval){
     try{
       return Integer.parseInt((String)m_HashTable.get(item));
     }catch(Exception e){
       return defval;
     }
  }
  /**
   * 读取配置文件
   * @return boolean
   */
  private boolean readConfig(String configfile) {
    try {
  String str = this.getClass().getProtectionDomain().getCodeSource().getLocation().getFile();
  str = str.substring(0, str.lastIndexOf("/"));
    //读取配置文件
  str = str + "/" + configfile;
      FileInputStream fi = new FileInputStream(str);
      BufferedReader reader = new BufferedReader(new InputStreamReader(fi));
      String line;
      String name = null, value = null;
      while (true) {
        line = reader.readLine();
        if (line == null) {
          break;
        }
        if (line.equals("")) {
          continue;
        }
        if (line.charAt(0) == '*') {
          continue;
        }
        line = line.trim();
        StringTokenizer sz = new StringTokenizer(line, "#");
        if (sz.hasMoreTokens()) {
          name = sz.nextToken().toUpperCase().trim();
        }
        if (sz.hasMoreTokens()) {
          value = sz.nextToken().trim();
        }
        if (name.equals("SERVER_OCSP_IP")) {
          m_host = value;
        }
        else if (name.equals("SERVER_OCSP_PORT")) {
          m_port = Integer.parseInt(value);
        }
        else if (name.equals("SERVER_OCSP_CERT")) {
          m_ocsp_cert_file = value;
        }
      }
      reader.close();
      fi.close();
      return true;
    }
    catch (Exception e) {
      System.out.println(e.getMessage());
      return false;
    }
  }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值