properties 配置文件中值换行的问题
在使用properties配置文件的时候我们经常碰到如下两个问题
1:当a=b中的b值内容特别长的时候为了阅读方便我们手动换行,但如果我们直接回车那么后面的数据就会丢失。那如何解决呢?
例如:
a=aaaaaaaaasdfasdfasdfasdfasdfadfasdfaf
我们如果想分两行卸载配置文件中应该如下写法
a=aaaaaaaaas\
dfasdfasdfasdfasdfadfasdfaf
2:当a=b中的b值内容特别长并且里面要分多行的话。
例如我们想打印出的值如下
aaaaaaaaaa
bbbbbbbb
cccccc
cccccc
那么我们配置文件中应该如下编写
a=aaaaaaaaaa\nbbbbbbbb\ncccccc\ncccccc
Java读取Properties文件时碰到两问题:
资源文件中的key对应的value过长时,书写不方便,需要换行,若直接回车则回车后的内容被忽略
资源文件中的key对应的value需要换行显示时,若直接回车,则同样丢掉回车后的部分
要
解决这两个问题其实不是很难,只是大家对properties文件的熟悉程度不太一样。我就是因为不熟悉以前都是一位换行就可以了,但是这是不行的。如果
是用回车直接换行,则properties文件会自动以某个特殊字符作为分割符将这行value分割为key/value的形式。
1
2
3
4
5
6
7
8
9
|
key1=Where did you take the picture?\ It's so beautiful!\ It's so beautiful!\ asdfasdfasd\ asfasdfsdfsadf\ asdfsadfsadfsdf\ asdfsdfasdfsadf\ asdfsadfsdf key2=Spring\nHibernate\nIbatis\nVelocity\nJava/nStruts |
测试源码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package
import
import
import
import
import
public PropertiesTest { public static void
Properties properties = new Properties(); try { InputStream inputStream = PropertiesTest. class .getClassLoader().getResourceAsStream( "test.properties" ); /* File property=new File("test.properties"); FileInputStream inputStream=new FileInputStream(property);*/ properties.load(inputStream); inputStream.close(); //关闭流 } catch (IOException e) { e.printStackTrace(); } String key1 = properties.getProperty( "key1" ); String key2 = properties.getProperty( "key2" ); System.out.println(key1); System.out.println(key2); } } |
上述代码如果用getResourceAsStream 方法就必须将test.properties文件放到src下或者添加至构建路径中。否则就是用File直接获取。
properties 配置文件中值换行的问题的更多相关文章
- Java 获取*.properties配置文件中的内容 ,常见的两种方法
import java.io.InputStream; import java.util.Enumeration; import java.util.List; import java.util.Pr ...
- 单例模式读取properties配置文件中的信息
public class ConfigManager { private static ConfigManager config = null; //创建Properties文件 读取配 ...
- Java 读取application.properties配置文件中配置
实际开发中若需要读取配置文件application.properties中的配置,代码如下.例:读取配置文件中name属性配置值: 代码如下: import org.springframework.c ...
- 【Quartz】解密properties配置文件中的账号密码
在配置quartz时,为了保密某些信息(特别是账号密码),通常会使用密文.那么在实际使用这些配置信息时,需要进行解密.本文提供一种解密方法如下: (1)假设在properties文件中加密了账号密码 ...
- maven 根据P参数值打包动态修改properties文件中值或一定properties
需求:由于最近开发clover项目 ,没有使用spring,更没有使用任何框架,而使用J2EE的web工程,所以连接ZK和MongoDB.Redis等服务器需用指定properties文件, 而目前公 ...
- springboot项目logback.xml或者logback-spring.xml中读取不到application.yml或application.properties配置文件中的配置解决办法
在springboot项目中我们可能想要实现不同环境的日志项目配置不同,比如我想让不同环境的日志路径不同. 这时候我们很容易想: 1.到将日志路径配置在springboot的:application- ...
- java获取properties配置文件中某个属性最简单方法
假如我想获取src目录下sysConfig.properties中的uploadpath属性的值 方法如下所示: private static final ResourceBundle bundle ...
- springMvc中获取通过注解获取properties配置文件(转)
springMvc的项目中,通过注解@Value获取properties配置文件中的配置,使用该注解必须引入的包: spring-beans-4.1.4.RELEASE.jar 下面是需要在sprin ...
- springboot如何读取配置文件中的参数(例如:application-consts.properties) 又结合maven读取配置文件的顺序
1.启动项目后,会读取pom.xml中的配置文件,例如现在读取的是本地配置 2.找到对应的配置文件 会读取uri地址下的配置.注:如果为springboot启动无需加config项目的名称,应该本身 ...
随机推荐
- 学习服务端JavaScript这个有名的Node.js
没接触过,试着简单学一下,从头开始: 参照这个教程:https://github.com/alsotang/node-lessons/tree/master/lesson0 一.搭建环境: 1.搭建N ...
- 无法将 匿名方法 转换为类型“System.Delegate”,因为它不是委托类型:解决方法
http://blog.csdn.net/xiaochongchong1248/archive/2009/11/20/4841193.aspx?1271573283 编程环境要求:VS2008/FX2 ...
- 【Alpha版本】冲刺阶段——Day 6
我说的都队 031402304 陈燊 031402342 许玲玲 031402337 胡心颖 03140241 王婷婷 031402203 陈齐民 031402209 黄伟炜 031402233 郑扬 ...
- inheritableStatics 与statics类
/** * statics 可以包含类的静态和静态方法,但是不能被子类继承 * inheritableStatics 与statics类似但是可以被子类继承 */ Ext.onReady(functi ...
- jsp内置对象作业3-application用户注册
1,注册页面 zhuCe.jsp <%@ page language="java" contentType="text/html; charset=UTF-8&qu ...
- 树分治 点分治poj 2114
存在2点间距离==k 输出AYE 否则输出NAY #include<stdio.h> #include<string.h> #include<algorithm> ...
- 数据库开发基础-SQl Server 存储过程
存储过程: 存储过程(stored procedure)有时也称为sproc.存储过程存储于数据库中而不是在单独的文件中,有输入参数.输出参数以及返回值等. 在数据库中,创建存储过程和创建其他对象的过 ...
- Sigmaplot激活码获取地址
SigmaPlot是一款高质量绘图软件,可以帮助用户以超简单表格形式来更清楚有效地展现工作结果,有了SigmaPlot你可以不用在电脑前久坐就可以制作出高质量的图形. 软件完美兼容Microsoft ...
- Web前端性能优化教程03:添加Expires头
本文是Web前端性能优化系列文章中的第三篇,主要讲述添内容:加Expires头.完整教程可查看:Web前端性能优化 什么是Expires头? Expires存储的是一个用来控制缓存失效的日期.当浏览器 ...
- jquery $.each 和for怎么跳出循环终止本次循环
1.for循环中我们使用continue:终止本次循环计入下一个循环,使用break终止整个循环. 2.而在jquery中 $.each则对应的使用return true 和return false. ...