2011-11-18 2 views
0

일부 XML을 읽으려면 java의 SAX 파서를 사용하고 있습니다. XML에 문제가있어 구문 분석이 실패하게됩니다.XML 잘못된 속성 값

11-18 10:25:37.290: W/System.err(3712): org.xml.sax.SAXParseException: Illegal: "<" inside attribute value (position:START_TAG <question text='null'>@1:23 in [email protected])

나는 내가 XML에서 문자열의 내부에 일부 HTML 태그를 가지고는 사실을 좋아하지 않는 느낌이 다음은 오류 메시지입니다. 따옴표 안의 어떤 것도 구문 관점에서 무시된다고 생각합니다. 또한 작은 따옴표를 사용하는 것이 유효합니까? 당신은 text 속성 값 내부의 <을 탈출 할 필요가

<quiz> 
    <question text="<img src='//files/alex/hilltf.PNG' alt='hill' style='max-width:400px' /> is represented on map by cut. "> 
     <answer text="1"/> 
     <answer text="2" correct="true"/> 
    </question> 
</quiz> 
+1

귀하의 질문은 무엇입니까? XML에 문제가 있다면, 파서가 당신에게 그것에 대해 말할 것이라고 기대하지 않겠습니까? –

답변

4

오류 메시지가 올 바릅니다. <은 태그의 시작이어야하며 문자열 안에 표시 할 수 없습니다. 대신 &lt;이어야합니다. 따옴표가 문제라고 생각하지 않습니다.

5

예를 들면 다음과 같습니다. XML은 < 및> 태그를 사용하여 태그를 나타내므로 이스케이프되거나 CDATA 태그 (속성 값의 옵션이 아님)에 포함되지 않는 한 내용에 불법입니다.