diff options
| author | Clyhtsuriva <aimeric@adjutor.xyz> | 2021-06-08 20:56:16 +0200 | 
|---|---|---|
| committer | Clyhtsuriva <aimeric@adjutor.xyz> | 2021-06-08 20:56:16 +0200 | 
| commit | 05bc8764e48d93e1c676062ce71f7053c59b3c93 (patch) | |
| tree | 4e010cf8794508e67cd6400a568d86df044604fb /src/musichub/util/XMLHandler.java | |
| parent | 5b3a0075f9b4a3d0cf5b15575648ee0af3d34749 (diff) | |
| parent | 48d56d9db8fe93f1e1799674fefabdfc677d2eb7 (diff) | |
Merge branch 'master' into develop
Diffstat (limited to 'src/musichub/util/XMLHandler.java')
| -rw-r--r-- | src/musichub/util/XMLHandler.java | 74 | 
1 files changed, 74 insertions, 0 deletions
| diff --git a/src/musichub/util/XMLHandler.java b/src/musichub/util/XMLHandler.java new file mode 100644 index 0000000..4b61842 --- /dev/null +++ b/src/musichub/util/XMLHandler.java @@ -0,0 +1,74 @@ +package musichub.util; + +import org.w3c.dom.Document; +import org.w3c.dom.Element; +import org.w3c.dom.NodeList; +import org.xml.sax.SAXException; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.transform.Transformer; +import javax.xml.transform.TransformerException; +import javax.xml.transform.TransformerFactory; +import javax.xml.transform.dom.DOMSource; +import javax.xml.transform.stream.StreamResult; +import java.io.File; +import java.io.IOException; + + +public class XMLHandler { +    TransformerFactory transformerFactory; +    Transformer transformer; +    DocumentBuilderFactory documentFactory; +    DocumentBuilder documentBuilder; + +    public XMLHandler() { +        try { +            transformerFactory = TransformerFactory.newInstance(); +            transformer = transformerFactory.newTransformer(); +            documentFactory = DocumentBuilderFactory.newInstance(); +            documentBuilder = documentFactory.newDocumentBuilder(); +        } catch (TransformerException | ParserConfigurationException tfe) { +            tfe.printStackTrace(); +        } +    } + +    public void createXMLFile(Document document, String filePath) { +        try { +            // create the xml file +            //transform the DOM Object to an XML File +            DOMSource domSource = new DOMSource(document); +            StreamResult streamResult = new StreamResult(new File(filePath)); + +            // If you use +            // StreamResult result = new StreamResult(System.out); +            // the output will be pushed to the standard output ... +            // You can use that for debugging + +            transformer.transform(domSource, streamResult); + +        } catch (TransformerException tfe) { +            tfe.printStackTrace(); +        } +    } + +    public Document createXMLDocument() { +        return documentBuilder.newDocument(); +    } + +    public NodeList parseXMLFile(String filePath) { +        NodeList elementNodes = null; +        try { +            Document document = documentBuilder.parse(new File(filePath)); +            Element root = document.getDocumentElement(); + +            elementNodes = root.getChildNodes(); +        } catch (SAXException | IOException e) { +            e.printStackTrace(); +        } +        return elementNodes; +    } + + +}
\ No newline at end of file | 
