2010-12-29 5 views
0

XML 문서를 구문 분석하기 위해 어느 누구도 XML 문서를 검색하고 XML 문서를 검색 할 수있는 블랙 베리에 SAX 파서 코드를 제공 할 수 있습니까? SAX 파서를 처음 접했습니다. 정말 큰 도움이 어느 한 날BlackBerry에서 SAX 파서를 사용하여 XML 구문 분석

내 XML 문자열을 도울 수 있다면하는 것은 다음과 같은 유형 인 :

<users> 
    <user uid = "1" dispname="Yogesh C" statid="1" statmsg="1">Yogesh Chaudhari</user> 
</users> 

내가 SAX 파서 문자열 위의 구문 분석해야합니다. 내가 코드를 가질 수 저장을 위해 SDCard에에 XML 형식의 파일을 사용하는 읽기/쓰기 데이터베이스 : 사전 인 Yogesh 차우에서

감사이 주제에 대한 질문의

+0

안녕 인 Yogesh 것 같습니다 여기에 요청한 것과 동일한 정보 http : // /stackoverflow.com/questions/4543525/store-xml-update-record-in-xml-retrive-a-specific-record-in-xml-stored-on-bb-devi and here http://stackoverflow.com/ 질문/4544510/sax-parser-in-blackberry 또는 차이점이 있습니까? –

+0

안녕하세요. Vahey. 실제로 나는 해결책을 찾지 못했습니다. 지금은 블랙 베리에서 SAX를 사용하여 XML을 구문 분석 할 수있는 방법을 알고 싶습니다.이 질문을 게시했습니다. 처음 XML을 구문 분석 한 다음 다른 기능 – user469999

+0

OK 파일을 읽고 단일 태그의 내용을 가져 오는 예제를 제공했습니다. –

답변

1

귀하의 시리즈를 추가하는 것?

저는이 질문에 답할 자격이 있지만, 여기서는 BB에서 XML을 테스트 할 때 사용한 샘플 코드를 사용하고 있습니다. 바라기를 이것은 당신을 시작하게 할 것이고, 끝나면 데이터베이스 코드를 가질 수 있을까요? ;)

public class XmlManager { 

    protected Document document; 

    //protected Log log = new Log("XmlManager"); 

    public XmlManager(String file) { 
     FileConnection fc = null; 
     InputStream inputStream = null; 
     try { 
      DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); 
      DocumentBuilder builder = factory.newDocumentBuilder(); 
      fc = (FileConnection)Connector.open(file, Connector.READ); 
      inputStream = fc.openInputStream(); 
      document = builder.parse(inputStream); 
     } catch (Exception e) { 
      //log.error("builder.parse", e); 
     } finally { 
      try { 
       if (fc!=null) fc.close(); 
       if (inputStream!=null) inputStream.close(); 
      } catch (Exception e) { 
       //log.error("close", e); 
      } 
     } 
    } 

    public String readApiString(String tag) {  
     Element root=document.getDocumentElement(); 
     NodeList list = root.getElementsByTagName(tag); 
     return(list.item(0).getFirstChild().getNodeValue()); 
    } 

XML 예제 :

<myuniquetagname>foo</myuniquetagname> 

사용 예 : 당신이 요구하는 것처럼

행운의
XmlManager xmlManager = new XmlManager("file:///SDCard/BlackBerry/documents/myfile.xml"); 
String foo = xmlManager.readApiString("myuniquetagname"); 

베스트

레이

+0

안녕하세요 Ray Vahey.i는 SAX 파서를 사용하여 파싱을 수행했습니다. 해당 코드를 게시합니다. 언젠가는. – user469999

+0

좋아요, 나는 그걸 고대합니다. –

+0

어떻게? 참조 용 코드 보내기 .. @ user469999 –

관련 문제