📄 code 17.2.4.txt
字号:
import java.io.IOException;
import com.ibm.xml.parser.TXElement;
import com.ibm.xml.parsers.TXRevalidatingDOMParser;
import org.xml.sax.SAXException;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
public class RevalidateSample {
public static void main(String args[]) {
String xmlFile = "input_file_URL";
TXRevalidatingDOMParser parser = new TXRevalidatingDOMParser();
try {
parser.parse(xmlFile);
} catch (SAXException se) {
System.out.println("SAX error while parsing: caught "+se.getMessage());
se.printStackTrace();
} catch (IOException ioe) {
System.out.println("I/O Error while parsing: caught "+ioe);
ioe.printStackTrace();
}
Document doc = parser.getDocument();
System.out.println("Doing initial validation");
Node position = parser.validate(doc.getDocumentElement());
if (position == null) {
System.out.println("ok.");
} else {
System.out.println("Invalid at " + position);
System.out.println(position.getNodeName());
}
// Now insert dirty data
Node junk = new TXElement("invalid_node");
Node corruptee = doc.getDocumentElement();
System.out.println("Corrupting: "+corruptee.getNodeName());
corruptee.insertBefore(junk,corruptee.getFirstChild().getNextSibling());
System.out.println("Doing post-corruption validation");
position = parser.validate(doc.getDocumentElement());
if (position == null) {
System.out.println("ok.");
} else {
System.out.println("Invalid at " + position);
System.out.println(position.getNodeName());
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -