XML 파일에있는 태그를 모른 채 XML 파일을 구문 분석 할 수있는 방법이 있습니까?Android에서 XML을 동적으로 파싱 하시겠습니까?
XML 파일은 입력으로 주어지며 파싱되어야합니다. 태그가 존재하지 않으므로 DOM Parser 또는 SAX 파서를 사용하여 구문 분석하기가 어려웠습니다.
이 방법이 있습니까?
감사합니다,이를 위해 시바 쿠마르
XML 파일에있는 태그를 모른 채 XML 파일을 구문 분석 할 수있는 방법이 있습니까?Android에서 XML을 동적으로 파싱 하시겠습니까?
XML 파일은 입력으로 주어지며 파싱되어야합니다. 태그가 존재하지 않으므로 DOM Parser 또는 SAX 파서를 사용하여 구문 분석하기가 어려웠습니다.
이 방법이 있습니까?
감사합니다,이를 위해 시바 쿠마르
나는 무엇이 문제인지 명확하지 않다. Java DOM 및 SAX 파서는 사전에 요소 태그 및 속성을 알 필요가 없습니다. 올바른 형식의 XML을 구문 분석합니다. 내가 특별히 안드로이드에 구문 분석 XML에 익숙하지 해요,하지만 여기 튜토리얼은 파서는 요소 태그를 알아야을 시사하고 사전에 속성을하지 않습니다
http://www.ibm.com/developerworks/opensource/library/x-android/
예를 들어, DOM을 사용할 수 있습니다 XML 문서를 구문 분석하여 DOM 트리를 가져옵니다. 요소 이름을 모르기 때문에 DOM 트리에서 요소 이름을 사용하여 특정 하위 또는 하위 요소를 쿼리 할 수는 없지만 Document.getDocumentElement() 및 Node.getChildNodes()과 같은 호출을 통해 트리를 이동할 수는 있습니다. XML 문서를 파싱 한 결과 구조화 된 DOM 트리로 무엇을해야 할지를 아는 코드까지 달려 있지만 DOM 파서 자체는 특정 요소 태그와 특성이 무엇인지 신경 쓰지 않습니다.
마찬가지로 XML 문서를 SAX 파서에 공급할 수 있으며 SAX는 SAX 파서를 통해이를 파싱합니다. SAX는 요소 이름과 해당 요소의 속성 맵을 사용하여 ContentHandler.startElement() 콜백을 호출합니다. 코드는 XML 문서를 처리 할 때 SAX 파서가 찾은 요소 및 특성을 사용하여 수행 할 작업을 결정해야하지만 SAX는 특정 요소 태그 및 특성이 무엇인지 신경 쓰지 않습니다.
그럼 궁금한 점이 무엇입니까? XML 구문 분석의 결과와 관련하여 코드에서 수행하고자하는 작업은 무엇입니까? 그것을 확인하려고합니까? 그걸 꽤 멋지게 인쇄하려고합니까? 다른 형식으로 변환하려고하십니까?
+1. 나는 당신에게 다른 질문을 추가하고 싶습니다. '네가하고 싶은 것을 정말로 알고 있니? ' –
당신은 간단한 파일로 읽을 수 있습니다. BufferedReader
을 사용하여 말하십시오. 그런 다음 각 라인을 읽고 닫음 탭 또는 패턴 일치가 <>
또는 </>
일 때 검색하십시오.
나머지 문자를 읽고 자신의 버퍼에 채우십시오. 요약하면 원시 파서를 개발하는 것과 같습니다.
하지만 확실하게 작동합니다. 그 지루한. :)
당신은 자산 폴더에 XML 파일을 가져이 같은 XML 파일을 구문 분석 할 수 있습니다 :
NodeList root = doc.getElementsByTagName("root");
NodeList nlQuestions = root.item(0).getChildNodes();
QuestionObject[] allQuestions = new QuestionObject[nlQuestions.getLength()];
for (int i = 0; i < nlQuestions.getLength(); i++){
Node question = nlQuestions.item(i);
NodeList childNodes = question.getChildNodes();
QuestionObject x = new QuestionObject();
for (int j = 0; j < childNodes.getLength(); j++){
Node child = childNodes.item(j);
if (child.getNodeName() !="#text"){
Questions t = Questions.valueOf(child.getNodeName());
당신이 당신이 구문 분석 뭘 원하는지 어떻게 당신이받은 XML 문서의 구조를 알 수없는 경우를 ? –
실제로 XML 파일에는 텍스트 및 이미지 형식의 일부 데이터가 포함됩니다 (바이트 코드 문자열로 변환되어 XML에 저장 됨) !! 이제 그 데이터를 가져 와서 화면에 표시하고 싶습니다 !! –