java中有啥方法可以读取占位符的字符串,并且把占位符替换成参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中有啥方法可以读取占位符的字符串,并且把占位符替换成参数相关的知识,希望对你有一定的参考价值。
我现在是从资源文件中读取一个字符串,这个字符串里面有占位符,读取结果如:xxxx0xxx1。现在要用一个方法把参数带入0和1中,java中好像有内置的方法,请问是什么,如果没有,求帮忙来个封装的类。谢谢
直接调用 MessageFormat.format就可以满足你的条件:MessageFormat.format("xxxx0xxx1", new Object[]“a”, "b");或者用
MessageFormat.format("xxxx0xxx1", a, b);这样就可以替换,但是注意的是占位符只能是0,1之类的,且从0开始,如果你有自定义的占位符,可以先替换成这样的 参考技术A 直接用java2word 下载安装版 把安装目录下面的jar包考到你的工程下面 然后根据文档调用方法就可以了 很简单 很实用 封装了很全面的方法
最常用两种java中的占位符的使用
先介绍一下format是什么:
Java中允许我们对指定的对象进行某种格式化,从而得到我们想要的格式化样式。而format可以帮助我们从某种格式转化到我们想要的格式的一种工具。
第一种:使用%s占位,使用String.format转换
public class Test {
public static void main(String[] args) {
String url = "我叫%s,今年%s岁。";
String name = "小明";
String age = "28";
url = String.format(url,name,age);
System.out.println(url);
}
}
控制台输出:
我叫小明,年28岁。
第二种:使用{1}占位,使用MessageFormat.format转换
public class Test {
public static void main(String[] args) {
String url02 = "我叫{0},今年{1}岁。";
String name = "小明";
String age = "28";
url02 = MessageFormat.format(url02,name,age);
System.out.println(url02);
}
}
控制台同样输出:
我叫小明,今年28岁。
发现了一个很精华的博客,关于format的详细解析见这里:https://www.jianshu.com/p/c8f16cab35e1#
以上是关于java中有啥方法可以读取占位符的字符串,并且把占位符替换成参数的主要内容,如果未能解决你的问题,请参考以下文章