I have an xml file and I want to manipulate the tags using the Java DOM, but its size is 25 gega-octets, so its telling me I can't and shows me this error:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
public Frwiki() {
filePath = "D:\\compressed\\frwiki-latest-pages-articles.xml";
}
public void deletingTag() throws Exception {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
Document doc = factory.newDocumentBuilder().parse(filePath);
NodeList nodes = doc.getElementsByTagName("*");
for (int j = 0; j < 3; j++) {
for (int i = 0; i < nodes.getLength(); i++) {
Node node = nodes.item(i);
if (!node.getNodeName().equals("id") && !node.getNodeName().equals("title")
&& !node.getNodeName().equals("text") && !node.getNodeName().equals("mediawiki")
&& !node.getNodeName().equals("revision") && !node.getNodeName().equals("page"))
node.getParentNode().removeChild(node);
}
}
Transformer transformer = TransformerFactory.newInstance().newTransformer();
transformer.transform(new DOMSource(doc), new StreamResult(filePath));
}