java操作XML中的占位符-阿里云开发者社区

开发者社区> 开发与运维> 正文
登录阅读全文

java操作XML中的占位符

简介: 有时XML的某些内容是待定的,对于这些内容可以在XML文件中使用占位符 <people> <person id="001"> <name>$name</name> <age>$age</age> </person> </people>   读取该文件的时候可以为其中的

有时XML的某些内容是待定的,对于这些内容可以在XML文件中使用占位符

<people>
 <person id="001">
  <name>$name</name>
  <age>$age</age>
 </person>
</people>

 

读取该文件的时候可以为其中的占位符设置值

/**
 * IO操作工具类
 * 
 * @author 徐越
 * 
 */
public class IOUtils
{
	/**
	 * 读取输入流为byte[]数组
	 */
	public static byte[] read(InputStream instream) throws IOException
	{
		ByteArrayOutputStream bos = new ByteArrayOutputStream();
		byte[] buffer = new byte[1024];
		int len = 0;
		while ((len = instream.read(buffer)) != -1)
		{
			bos.write(buffer, 0, len);
		}
		return bos.toByteArray();
	}
}

InputStream instream = this.getClass().getClassLoader().getResourceAsStream("person.xml");
String oldXML = new String(IOUtils.read(instream), "UTF-8");
String newXML = oldXML.replaceAll("\\$name", "徐越").replaceAll("\\$age","22");

要说明的是replaceAll第一个参数是正则表达式,正则表达式中$需要用\转义。

Java中对\又需要用\进行转义,所以写成\\$name 。

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章
最新文章
相关文章