这是我的计划:
public class XMLTest {
static String XMLdata="<Section DisplayLocation=\"Middle\" TargetLocation=\"ufdLocation0\" TemplateFileName=\"formaol\" TemplateID=\"formaol\" TemplateName=\"Form AOL\" UFDID=\"2a3935c7-105d-470e-b8ab-ad90c8f44880\"><Inputs BusinessNamePP=\"<><>\" Caption=\"\" Description=\"A line must be active on your account for at least 30 days before it can be transferred to a new account.You have <?ufd 'Test'?> days remaining before you can transfer.\" Image1=\"\" Image2=\"\" ImageLabel1=\"\" ImageLabel2=\"\" emailPP=\"<Anji>\" firstNamePP=\"<Jeera>\" lastNamePP=\"<Hellow>\"/></Section>";
public static void main(String args[]){
Document doc = null;
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = null;
db = dbf.newDocumentBuilder();
doc = db.parse(new InputSource(new StringReader(XMLdata)));
if (doc != null) {
NodeList nodeList = doc.getElementsByTagName("Inputs");
for(int x=0,size= nodeList.getLength(); x<size; x++) {
System.out.println(nodeList.item(x).getAttributes().getNamedItem("Description").getNodeValue());
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
当我运行这个时,我得到输出
A line must be active on your account for at least 30 days before it can be transferred to
a new account.You have <?ufd 'Test'?> days remaining before you can transfer.
但是我不希望dom解析器自动发生这种解码, 如何防止这种解码发生?
预期产出:
A line must be active on your account for at least 30 days before it can be transferred to
a new account.You have <?ufd 'Test'?> days remaining before you can transfer.
与XML中的内容完全相同,但没有进行明确的转换。