读Properties文件和往Properties文件里面写内容

简介: 读取配置文件是一个很常用的操作; 读文件很简单: public static String getProperty(String key) { String value = ""; //第一步是取得一个Properties对象 Properties props = new...

读取配置文件是一个很常用的操作;

读文件很简单:

public static String getProperty(String key) {
		String value = "";
//第一步是取得一个Properties对象
		Properties props = new Properties();
//第二步是取得配置文件的输入流
		InputStream is = PropUtil.class.getClassLoader().getResourceAsStream("config.properties");//在非WEB环境下用这种方式比较方便
		try {
			InputStream input = new FileInputStream("config.properties");//在WEB环境下用这种方式比较方便,不过当配置文件是放在非Classpath目录下的时候也需要用这种方式
//第三步讲配置文件的输入流load到Properties对象中,这样在后面就可以直接取来用了
			props.load(input);
			value = props.getProperty(key);
			is.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return value;
	}

 

往配置文件里面写内容:

public static void setProperty(Map<String,String> data) {
//第一步也是取得一个Properties对象
		Properties props = new Properties();
//第二步也是取得该配置文件的输入流
//		InputStream is = PropUtil.class.getClassLoader().getResourceAsStream("config.properties");
		try {
			InputStream input = new FileInputStream("config.properties");
//第三步是把配置文件的输入流load到Properties对象中,
			props.load(input);
//接下来就可以随便往配置文件里面添加内容了
//			props.setProperty(key, value);
			if (data != null) {
				Iterator<Entry<String,String>> iter = data.entrySet().iterator();
				while (iter.hasNext()) {
					Entry<String,String> entry = iter.next();
					props.setProperty(entry.getKey().toString(), entry.getValue().toString());
				}
			}
//在保存配置文件之前还需要取得该配置文件的输出流,切记,如果该项目是需要导出的且是一个非WEB项目,则该配置文件应当放在根目录下,否则会提示找不到配置文件
			OutputStream out = new FileOutputStream("config.properties");
//最后就是利用Properties对象保存配置文件的输出流到文件中;
			props.store(out, null);
			input.close();
			out.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}

 

目录
相关文章
|
数据采集
24年整理! 各大代理商隧道代理IP价格对比,文末有总结
作为日常需要用到大量代理IP的爬虫从业者,分析各大代理商的价格及IP可用率等属于基操了,很多时候我们遵循自己的消费习惯购买产品,被当韭菜收割一波。 于是我打算分析了一下几家常用代理商的价格,顺便有一些日常小tip分享给大家,不能不明不白就当一颗绿油油的小韭菜。
|
6月前
|
人工智能 搜索推荐 数据可视化
用 Python 制作简单小游戏教程:手把手教你开发猜数字游戏
本教程详细讲解了用Python实现经典猜数字游戏的完整流程,涵盖从基础规则到高级功能的全方位开发。内容包括游戏逻辑设计、输入验证与错误处理、猜测次数统计、难度选择、彩色输出等核心功能,并提供完整代码示例。同时,介绍了开发环境搭建及调试方法,帮助初学者快速上手。最后还提出了图形界面、网络对战、成就系统等扩展方向,鼓励读者自主创新,打造个性化游戏版本。适合Python入门者实践与进阶学习。
689 1
|
计算机视觉
Mac-Mini 外接三个显示器教程
Mac-mini 官方只支持连接2个显示器,ctrl cv 复制粘贴代码和写博客的时候十分不方便,这时候需要外接第三个显示器,下面看看如何操作。
1723 0
Mac-Mini 外接三个显示器教程
|
12月前
|
存储 人工智能 API
AgentScope:阿里开源多智能体低代码开发平台,支持一键导出源码、多种模型API和本地模型部署
AgentScope是阿里巴巴集团开源的多智能体开发平台,旨在帮助开发者轻松构建和部署多智能体应用。该平台提供分布式支持,内置多种模型API和本地模型部署选项,支持多模态数据处理。
6093 77
AgentScope:阿里开源多智能体低代码开发平台,支持一键导出源码、多种模型API和本地模型部署
|
11月前
|
传感器
基于PID控制器的天线方位角位置控制系统simulink建模与仿真
本课题基于MATLAB2022a的Simulink平台,构建并仿真了天线方位角位置控制系统。通过零极点配置法整定PID控制器参数,实现对天线方位角的精确控制。系统由天线驱动装置、角度传感器、PID控制器和电机驱动电路组成,确保天线快速准确地跟踪设定方位角。PID控制器综合比例、积分、微分三个环节,优化响应速度、稳定性和准确性,适用于无线通信、雷达跟踪等领域。
|
11月前
|
机器学习/深度学习 人工智能 自然语言处理
MarS:微软开源金融市场模拟预测引擎,支持策略测试、风险管理和市场分析
MarS 是微软亚洲研究院推出的金融市场模拟预测引擎,基于生成型基础模型 LMM,支持无风险环境下的交易策略测试、风险管理和市场分析。
398 8
MarS:微软开源金融市场模拟预测引擎,支持策略测试、风险管理和市场分析
|
机器学习/深度学习 弹性计算 编解码
阿里云服务器ECS架构X86计算是什么?和ARM有什么区别?
阿里云服务器ECS架构X86计算是什么?和ARM有什么区别?
826 0
|
机器学习/深度学习 存储 编解码
计算机视觉的基本原理
计算机视觉的基本原理
807 0
|
存储 物联网 Serverless
【文生图】可换模型,函数计算一键部署 Stable Diffusion
本实验教你如何在函数计算FC上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。本实验答疑钉钉群:29290019867。
|
前端开发 JavaScript Oracle
程序员如何成为自由职业者或者数字游民?
程序员如何成为自由职业者或者数字游民?
675 0