자바 조작 XML 의 자리 표시 자

1320 단어 자바
때때로 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");

설명 할 것 은 replace All 의 첫 번 째 매개 변 수 는 정규 표현 식 이 고 정규 표현 식 에서$는\\전 의 를 사용 해 야 합 니 다.
자바 에 서 는\\\로 의 미 를 바 꿔 야 하기 때문에\\$name 이 라 고 쓰 여 있 습 니 다.

좋은 웹페이지 즐겨찾기