본문 바로가기

개발/App Developer

java xml 파싱


곰팅이 자슥이 계속 물어와서 짜증나서 알려주다 나도 정리를 좀

 

<list>

  <a>aaa</a>

  <b>bbb</b>

</list>

 

이런 형태로 되어 있는 xml을 파싱할 때만 사용하자....

 

<%@ page language="java" contentType="text/html; charset=UTF-8"
 pageEncoding="EUC-KR"%>
<%@ page import="org.xml.sax.InputSource"%>
<%@ page import="java.util.*" %>
<%@ page import="javax.xml.parsers.DocumentBuilder" %>
<%@ page import="javax.xml.parsers.DocumentBuilderFactory" %>
<%@ page import="org.w3c.dom.Document" %>
<%@ page import="org.w3c.dom.Node" %>
<%@ page import="org.w3c.dom.NodeList" %>
<%
 String url = "URL";
 
 DocumentBuilder docBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
 Document doc = docBuilder.parse(url);
 doc.setDocumentURI(url);
 
 NodeList nodeMomList = doc.getDocumentElement().getChildNodes();
 List xmlList = new ArrayList();
 
 for(int i=0; i<nodeMomList.getLength(); i++){
   Node row = nodeMomList.item( i );
   NodeList childList = row.getChildNodes();
   
   HashMap map = new HashMap();
   for (int a=0; a<childList.getLength(); a++){
   Node nodeList = childList.item(a);
    map.put(nodeList.getNodeName(),nodeList.getTextContent());
   }

//if(map.get(파싱한 데이터 key) != null) 

   xmlList.add(map);
 }
 out.println(xmlList);
%>

 

List에 빈 HashMap이 0,2,4,6....번째로 들어가기 때문에 List에 넣어주기 전에 if 조건으로

걸러주어야 함.

 

이후에 xmlList.get(index)를 HashMap에 넣어주고 다시 .get(key)를 이용하여 데이터를 각각 뽑아서 사용하면 될듯하다

'개발 > App Developer' 카테고리의 다른 글

앱스토어 등록법  (0) 2010.08.31
applicationDidFinishLaunching  (0) 2010.08.31
xcode 4  (0) 2010.08.31
Xcode 4 로 전환 소개  (0) 2010.08.31
기존 Xcode 3 프로젝트 사용  (0) 2010.08.31