XMLStreamWriter
XMLStreamWriter (XML 스트림 라이터)
XML을 쓰는 방법을 지정하는 인터페이스예요. XMLStreamReader와 대응되는 쓰기 전용 인터페이스예요.
본문
public interface XMLStreamWriter
XMLStreamWriter 인터페이스는 XML을 쓰는 방법을 지정해요. 이 인터페이스는 입력에 대한 well-formedness 검사를 수행하지 않아요.
writeCharacters 메서드는 &, <, >를 이스케이프해야 하고, writeAttribute는 속성 값에 대해 위 문자들에 "까지 더 이스케이프해서 문자 내용과 속성 값이 잘 형성되도록 해요. 각 NAMESPACE와 ATTRIBUTE는 개별적으로 작성돼야 해요.
writeStartElement, writeEndElement, writeAttribute, writeNamespace, writeCharacters, writeCData, writeComment, writeProcessingInstruction, writeDTD, writeEmptyElement, writeDefaultNamespace 등의 메서드를 제공해요.
네임스페이스 사용과 javax.xml.stream.isRepairingNamespaces 여부에 따라 writeAttribute와 writeStartElement의 동작이 달라져요. 바인딩되지 않은 URI에 접두어가 없으면 임의의 접두어를 생성하고, 충돌하면 XMLStreamException을 던질 수 있어요.
writeEndDocument로 문서를 끝내고, flush()로 버퍼를 비우며, close()로 writer를 닫고 관련 자원을 해제해요. 현재 네임스페이스 스코프는 writeStartElement에서 열리고 writeEndElement에서 닫혀요.