Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package nl.reader.csv;
- import javax.xml.parsers.DocumentBuilderFactory;
- import javax.xml.transform.Transformer;
- import javax.xml.transform.TransformerFactory;
- import javax.xml.transform.dom.DOMSource;
- import javax.xml.transform.stream.StreamResult;
- import javax.xml.parsers.DocumentBuilder;
- import org.w3c.dom.Document;
- import org.w3c.dom.NodeList;
- import org.w3c.dom.Node;
- import org.w3c.dom.Element;
- import java.io.BufferedReader;
- import java.io.File;
- import java.io.FileReader;
- import java.io.IOException;
- import java.io.StringWriter;
- import java.util.Scanner;
- /**
- * This class reads the XML with the possible users?
- */
- public class ReadXML {
- public static void main(String args[]) {
- //String id = "2";
- //getUser(id);
- }
- /**
- * this class gets the specific user from the XML file
- * @param userID specifies which user to read from the XML file
- * @return
- */
- public static String getUser(String userID) {
- try {
- String StubStore = System.getenv("StubStore");
- File indexIn = new File(StubStore+"stubstore/Templates/Naming.xml");
- //File indexOut = new File(StubStore+"stubstore/Output/index.xml");
- DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
- DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
- Document doc = dBuilder.parse(indexIn);
- String payLoad;
- doc.getDocumentElement().normalize();
- //Element nList = doc.getDocumentElement();
- NodeList nList = doc.getElementsByTagName("user");
- for (int temp = 0; temp < nList.getLength(); temp++) {
- Node nNode = nList.item(temp);
- //System.out.println("\nCurrent Element :" + nNode.getNodeName());
- if (nNode.getNodeType() == Node.ELEMENT_NODE) {
- Element eElement = (Element) nNode;
- String id = eElement.getElementsByTagName("id").item(0).getTextContent();
- String name = eElement.getElementsByTagName("name").item(0).getTextContent();
- String csvFile = StubStore +"stubstore/Data/dataFile1.csv";
- String line = null;
- String cvsSplitBy = ",";
- try (BufferedReader br = new BufferedReader(new FileReader(csvFile))) {
- while ((line = br.readLine()) != null) {
- // use comma as separator
- String[] user = line.split(cvsSplitBy);
- if (user[0].equals(userID)) {
- id = user[0];
- name = user[1];
- //System.out.println("Id : " + id);
- //System.out.println("Name : " + name);
- }
- }
- eElement.getElementsByTagName("id").item(0).setTextContent(id);
- eElement.getElementsByTagName("name").item(0).setTextContent(name);
- TransformerFactory transformerFactory = TransformerFactory.newInstance();
- Transformer transformer = transformerFactory.newTransformer();
- DOMSource source = new DOMSource(doc);
- StringWriter sw = new StringWriter();
- //StreamResult result = new StreamResult(indexOut);
- //StreamResult payLoad = new StreamResult(source.toString());
- //transformer.transform(source, result);
- transformer.transform(source, new StreamResult(sw));
- payLoad = sw.toString();
- return payLoad;
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- return "";
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement