String strXML ="<?xml version='1.0' encoding='UTF-8' standalone='yes'?><custDtl><name>abc</name><mobNo>9876543210</mobNo></custDtl>"
如何验证字符串是否是正确的XML字符串。
答案 0 :(得分:6)
您只需要根据XML String打开InputStream
并将其传递给SAX Parser:
try {
String strXML ="<?xml version='1.0' encoding='UTF-8' standalone='yes'?><custDtl><name>abc</name><mobNo>9876543210</mobNo></custDtl>";
SAXParser saxParser = SAXParserFactory.newInstance().newSAXParser();
InputStream stream = new ByteArrayInputStream(strXML.getBytes("UTF-8"));
saxParser.parse(stream, ...);
} catch (SAXException e) {
// not valid XML String
}
答案 1 :(得分:0)
public static boolean isXMLValid(String string) {
try {
SAXParserFactory.newInstance().newSAXParser().getXMLReader().parse(new InputSource(new StringReader(string)));
return true;
} catch (ParserConfigurationException | SAXException | IOException ex) {
return false;
}
}