답변:
내 코드베이스 에이 기능이 있습니다.이 기능이 도움이 될 것입니다.
public static Document loadXMLFromString(String xml) throws Exception
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
InputSource is = new InputSource(new StringReader(xml));
return builder.parse(is);
}
이 비슷한 질문을 참조하십시오
import org.xml.sax.InputSource;
문자열을 InputStream으로 변환하여 DocumentBuilder에 전달
final InputStream stream = new ByteArrayInputStream(string.getBytes(StandardCharsets.UTF_8));
DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
builder.parse(stream);
편집
에 대응 bendin '인코딩에 관한 코멘트는, 참조 shsteimer 이 질문의 답을'.
이 방법을 사용하고 있습니다
public Document parseXmlFromString(String xmlString){
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
InputStream inputStream = new ByteArrayInputStream(xmlString.getBytes());
org.w3c.dom.Document document = builder.parse(inputStream);
return document;
}
javax.xml.parsers.DocumentBuilder.parse(string)
문자열이 uri (끔찍한) 라고 가정합니다.