从jar包中读取配置文件信息

kk.jar的目录结构如下

+kk.jar
    +META-INF
        MANIFEST.MF
    +config
        database.properties

目标:读取database.properties中的参数信息

types=mysql
mysql.url=jdbc:mysql://127.0.0.1:3306/tjtz
mysql.user=root
mysql.password=root
mysql.driver=com.mysql.jdbc.Driver
mysql.maxCounts=5

代码如下:

/*
* @(#)JarFileReader.java Oct 9, 2008
*
* Copyright (c) 2008 by jadmin. All Rights Reserved.
*/

package file.jar;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
import java.util.Set;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;

/**
* 从jar包中读取配置文件信息
*
* @author <a href="mailto:jadmin@yeah.net">jadmin</a>
* @version 1.00 Oct 9, 2008 1:10:44 AM
*/
public class JarReader {

public static void main(String[] args) {
   String jarPath = "C:\\Documents and Settings\\Administrator\\桌面\\新建文件夹\\kk.jar";
   String entryFile = "config/database.properties";
   doRead(jarPath,entryFile);
}

public static void doRead(String jarPath, String entryFile) {
   try {
    JarFile jarFile = new JarFile(jarPath);
    JarEntry entry = jarFile.getJarEntry(entryFile);
    InputStream input = jarFile.getInputStream(entry);
    process(input);
    jarFile.close();
   } catch (IOException e) {
    e.printStackTrace();
   }
}

private static void process(InputStream input) {
   Properties p = new Properties();
   try {
    p.load(input);
    Set<?> set = p.keySet();
    for (Object name : set)
     System.out.println(name + "=" + p.getProperty((String) name));
   } catch (IOException e) {
    e.printStackTrace();
   }
}
}

运行结果如下:

59efe843d7ae630972f05d1e.jpg

转载于:https://www.cnblogs.com/jadmin/archive/2008/10/09/2206128.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值