top of page

package automationFramework;

import java.io.File;
import java.io.IOException;

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 org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;

import org.xml.sax.SAXException;
import org.w3c.dom.Document;
 

public class Xml_file {
    
    static File fXmlFile=new File("C:\\test\\textConfig.xml");
    static Document doc;
    
    @BeforeClass
    public static void start ()
    {
        
    }
    
    @Test
    public void insert_valus() throws Exception
    {
        setData("author",2, "Izik");
        saveFile();
        System.out.println(getData("author",2));
        System.out.println(getNodesNumber("book"));
        
        
        
    }
    
    @AfterClass
    public static void closetest()
    {
        
    }
    
    public static String getData(String xmlFile,String nodeName,Integer indx) throws ParserConfigurationException, SAXException, IOException
    {
        File fXmlFile= new File(xmlFile);
        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
        DocumentBuilder dBuilder =dbFactory.newDocumentBuilder();
        Document doc = dBuilder.parse(fXmlFile);
        doc.getDocumentElement().normalize();
        return doc.getElementsByTagName(nodeName).item(indx).getTextContent();
        
    }
    
    public static void setData(String xmlFile,String nodeName,Integer indx,String value) throws ParserConfigurationException, SAXException, IOException
    {
        File fXmlFile= new File(xmlFile);
        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
        DocumentBuilder dBuilder =dbFactory.newDocumentBuilder();
        Document doc = dBuilder.parse(fXmlFile);
        doc.getDocumentElement().normalize();
        doc.getElementsByTagName(nodeName).item(indx).setTextContent(value);
        
    }
    
    public static int getNodeCount(String xmlFile,String nodeName) throws ParserConfigurationException, SAXException, IOException
    {
        File fXmlFile= new File(xmlFile);
        int nodeCount=0;
        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
        DocumentBuilder dBuilder =dbFactory.newDocumentBuilder();
        Document doc = dBuilder.parse(fXmlFile);
        doc.getDocumentElement().normalize();
        return nodeCount=doc.getElementsByTagName(nodeName).getLength();
        
        
    }
    public static Document xmlElement() throws ParserConfigurationException, SAXException, IOException
    {   
        // create the object of doc
        DocumentBuilderFactory dbFactory=DocumentBuilderFactory.newInstance();
        DocumentBuilder dBuilder=dbFactory.newDocumentBuilder();
        doc=dBuilder.parse(fXmlFile);
        doc.getDocumentElement().normalize();
        return doc;
    }
    
    public static String getData(String nodeName,int nodeNumber ) throws ParserConfigurationException, SAXException, IOException
    {
        return doc.getElementsByTagName(nodeName).item(nodeNumber).getTextContent();
    }
    
    public static void setData(String nodeName,int nodeNumber ,String textContent  ) throws ParserConfigurationException, SAXException, IOException, Exception
    {
        // set the content into xml file
        doc = xmlElement();
        doc.getElementsByTagName(nodeName).item(nodeNumber).setTextContent(textContent);
        
    }
    
    public int getNodesNumber(String nodeName) throws ParserConfigurationException, SAXException, IOException
    {
        doc = xmlElement();
        int length = doc.getElementsByTagName(nodeName).getLength();
        return length ;
    }
    
    
    
    public void saveFile () throws TransformerException
    {
         // save the content into xml file
        // after set the content into xml file ---> setData()
        TransformerFactory transformerFactory = TransformerFactory
                .newInstance();
        Transformer transformer = transformerFactory.newTransformer();
        DOMSource source = new DOMSource(doc);
        StreamResult result = new StreamResult(fXmlFile);
        transformer.transform(source, result);
    }
    

}
 

Selenium - izselenium aoutomation tool

054-8059589

  • White Facebook Icon
  • White Twitter Icon
  • White Google+ Icon
  • White YouTube Icon

© 2017 by izselenium

bottom of page