java类中有一个字符串参数,内容为IP地址,如何将其抽取出来,放到配置文件中
1条回答 默认 最新
进击的巨喵 2016-12-21 02:19关注import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.Properties;
import org.apache.log4j.Logger;
public class ConfigUtil {
private static final Logger logger = Logger.getLogger(Thread
.currentThread().getStackTrace()[1].getClassName());
private static String fileName = "D:/test.properties";
private static Properties resourcesCfg = null;
static {
resourcesCfg = new Properties();
loadConfig();
}
/**
* 保存配置文件参数
* @param paramName 参数名
* @param paramValue 参数值
*/
public static void saveConfig(String paramName, String paramValue) {
FileOutputStream fos = null;
try {
fos = new FileOutputStream(java.net.URLDecoder.decode(fileName,
"utf-8"));
resourcesCfg.setProperty(paramName, paramValue);
resourcesCfg.store(fos, "Update '" + paramName + "' value");
} catch (FileNotFoundException e) {
logger.error("找不到配置文件");
} catch (UnsupportedEncodingException e) {
logger.error("读取配置文件转码错误");
} catch (IOException e) {
logger.error("读取配置文件出错.");
} finally {
if (fos != null) {
try {
fos.close();
} catch (IOException e) {
logger.error("读取配置文件出错.");
}
}
}
}/** * 加载配置信息文件. */ public static void loadConfig() { FileInputStream fis = null; try { fis = new FileInputStream(java.net.URLDecoder.decode(fileName, "utf-8")); resourcesCfg.load(fis); } catch (FileNotFoundException e) { logger.error("找不到配置文件"); } catch (UnsupportedEncodingException e) { logger.error("读取配置文件转码错误"); } catch (IOException e) { logger.error("读取配置文件出错."); } finally { if (fis != null) { try { fis.close(); } catch (IOException e) { logger.error("读取配置文件出错."); } } } }}
调用ConfigUtil.save()方法保存。字符串参数值是动态的吗?如果不是,可以先写到配置文件中,java类从配置文件里取。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报