본문 바로가기

JAVA/JAVA(MEC)

combo상자에 xml파일 파싱

package test1;


import java.io.File;


import javax.xml.parsers.DocumentBuilder;

import javax.xml.parsers.DocumentBuilderFactory;


import org.eclipse.swt.SWT;

import org.eclipse.swt.events.SelectionAdapter;

import org.eclipse.swt.events.SelectionEvent;

import org.eclipse.swt.layout.FillLayout;

import org.eclipse.swt.widgets.Combo;

import org.eclipse.swt.widgets.Display;

import org.eclipse.swt.widgets.Shell;

import org.eclipse.swt.widgets.Tree;

import org.eclipse.swt.widgets.TreeItem;

import org.w3c.dom.Document;

import org.w3c.dom.Element;

import org.w3c.dom.Node;

import org.w3c.dom.NodeList;


public class main {


public static void main(String[] args) {

// TODO Auto-generated method stub

Display display = new Display();

Shell shell = new Shell(display);

shell.setText("TEXT EXAMPLE");

shell.setBounds(100, 100, 200, 100);

// Composite composite = new Composite(shell,SWT.BORDER);

// composite.setBounds(25,25,150,250);

FillLayout fillLayout = new FillLayout(SWT.HORIZONTAL);

shell.setLayout(fillLayout);

final Combo combo1 = new Combo(shell, SWT.READ_ONLY);

final Tree tree = new Tree(shell, SWT.SINGLE);

combo1.setBounds(25, 25, 100, 75);

combo1.setItems(new String[] { "first", "second", "third" });

combo1.setText("First");

// final Label label = new Label(shell, SWT.CENTER);


combo1.addSelectionListener(new SelectionAdapter() {

public void widgetSelected(SelectionEvent event) {

// label.setText("Selected : " + combo1.getText());


try {

File xmlDoc = new File("NewFile.xml");

DocumentBuilderFactory dbFact = DocumentBuilderFactory.newInstance();

DocumentBuilder dBuild = dbFact.newDocumentBuilder();

Document doc = dBuild.parse(xmlDoc);


// System.out.println("Root element : " +

// doc.getDocumentElement().getNodeName());


NodeList nList = doc.getElementsByTagName("grandparent");

NodeList nList2 = doc.getElementsByTagName("parent");

NodeList nList3 = doc.getElementsByTagName("child");

for (int i = 0; i < nList.getLength(); i++) {

Node nNode = nList.item(i);

TreeItem grandParent1 = new TreeItem(tree, 0);

grandParent1.setText(nNode.getNodeName());

System.out.println("Node name : " + nNode.getNodeName() + "   " + (i + 1));

for (int j = 0; j < 2; j++) {

Node nNode2 = nList2.item(j);

TreeItem parent1 = new TreeItem(grandParent1, 0);

parent1.setText(nNode2.getTextContent());

for (int k = 0; k < 3; k++) {

Node nNode3 = nList3.item(k);

TreeItem child1 = new TreeItem(parent1, 0);

if (nNode.getNodeType() == Node.ELEMENT_NODE) {

Element eElement3 = (Element) nNode3;

//parent1.setText(eElement.getElementsByTagName("parent").item(0).getTextContent());

//parent1.setText(eElement.getElementsByTagName("parent").item(1).getTextContent());

child1.setText(eElement3.getTextContent());

//System.out.println("student id : " + eElement.getAttribute("idno"));

//System.out.println("student first name : "

// + eElement.getElementsByTagName("parent").item(0).getTextContent());


}

}

}


}


} catch (Exception e) {

System.out.println("error");

}


/*

* for (int i = 0; i < 4; i++) { TreeItem grandParent = new

* TreeItem(tree, 0); grandParent.setText(nNode.getNodeName());

* for (int j = 0; j < 4; j++) { TreeItem parent = new

* TreeItem(grandParent, 0); parent.setText("Parent -" + j); for

* (int k = 0; k < 4; k++) { TreeItem child = new

* TreeItem(parent, 0); child.setText("Child -" + k); } } }

*/


}

});

/*

* tree.addSelectionListener(new SelectionAdapter(){ public void

* widgetSelected(SelectionEvent event){ TreeItem[] selected =

* tree.getSelection(); if(selected.length>0){

* System.out.println("Selected: "+selected[0].getText()); } } });

*/


shell.open();

while (!shell.isDisposed()) {

if (!display.readAndDispatch())

display.sleep();

}

display.dispose();

}


}


/*

 * public class main{ public static void main(String[] args){ try{ File xmlDoc =

 * new File("NewFile.xml"); DocumentBuilderFactory dbFact =

 * DocumentBuilderFactory.newInstance(); DocumentBuilder dBuild =

 * dbFact.newDocumentBuilder(); Document doc = dBuild.parse(xmlDoc);

 * 

 * System.out.println("Root element : " +

 * doc.getDocumentElement().getNodeName());

 * 

 * 

 * NodeList nList = doc.getElementsByTagName("grandparent"); for(int

 * i=0;i<nList.getLength();i++) { Node nNode = nList.item(i);

 * System.out.println("Node name : " + nNode.getNodeName()+ "   " + (i+1));

 * 

 * if(nNode.getNodeType() == Node.ELEMENT_NODE){ Element eElement = (Element)

 * nNode; System.out.println("student id : "+ eElement.getAttribute("idno"));

 * System.out.println("student first name : "+

 * eElement.getElementsByTagName("parent").item(0).getTextContent());

 * 

 * } }

 * 

 * 

 * } catch(Exception e){

 * 

 * } } }

 */



'JAVA > JAVA(MEC)' 카테고리의 다른 글

파싱2  (0) 2020.08.14
eclipse rcp version 정리  (0) 2020.08.14
openshift template 제거(administer로 로그인)  (0) 2020.08.14
openshift origin  (0) 2020.08.14
gef의 구조 및 설계방법  (0) 2020.08.14