Programming

XML에서 앰퍼샌드를 이스케이프 처리하여 HTML에서 엔티티로 렌더링하려면 어떻게해야합니까?

procodes 2020. 2. 12. 23:46
반응형

XML에서 앰퍼샌드를 이스케이프 처리하여 HTML에서 엔티티로 렌더링하려면 어떻게해야합니까?


HTML 페이지에서 렌더링하려는 XML 텍스트가 있습니다. 이 텍스트에는 앰퍼샌드가 포함되어 있으며 엔티티 표시로 렌더링하려고합니다 &.

소스 XML에서이 앰퍼샌드를 어떻게 피할 수 있습니까? 나는 시도 &했지만 이것은 실제 앰퍼샌드 문자 ( &) 로 디코딩 되어 HTML 에서는 유효하지 않습니다 .

따라서 &XML 출력을 사용하는 웹 페이지에서와 같이 렌더링되는 방식으로 이스케이프 처리하고 싶습니다 .


XML에 내용 &포함되면 텍스트가 &됩니다.

HTML에서 사용하면으로 렌더링됩니다 &.


은 XML 1.0 사양의 §2.4 , 당신은 사용할 수 있어야합니다 &.

나는 & amp; 그러나 이것은 허용되지 않습니다.

다른 문제가 아닙니까? XML은이를 앰퍼샌드를 피하는 방법으로 명시 적으로 정의합니다.


&솔루션은 IT와 상당 유니 코드 소수점 연결하는, 그래서 문자 자체 XML에서 이스케이프 문자 &, 따라서 오류를 구문 분석에는 XML이 없음을 보장합니다. 즉, 문자를로 &바꿉니다 &.


CDATA태그 사용 :

 <![CDATA[
   This is some text with ampersands & other funny characters. >>
 ]]>

&amp;제대로 작동하려면 Wikipedia에는 XML로 미리 정의 된 엔터티 목록이 있습니다.


제 경우에는로 변경해야했습니다 %26.

&URL에서 탈출해야했습니다 . 그래서 &amp;나를 위해 운동하지 않았다. 를 urlencode의 기능 변경 &%26. 이런 식으로 XML이나 브라우저 URL 메커니즘이 URL에 대해 불평하지 않았습니다.


나는 시도했지만 작동하지 않았다. Wim ten Brink의 답변에 따라 & amp; amp를 시도해 보았습니다.

동료 개발자 중 한 명이 & # x26; 렌더링 횟수에 관계없이 작동했습니다.


&amp; XML 문서의 대부분의 섹션에서 앰퍼샌드를 나타내는 방법입니다.

당신은 XML은 HTML에 표시하도록하려면 먼저 제대로 인코딩 된 XML을 생성 (변경 포함하는 필요 &&amp;) 및 다음 (다시 변경 포함 적절하게 인코딩 된 HTML 만들기 위해 그것을 사용 &하는 방법에 대해 &amp;). 결과는 다음과 같습니다.

&amp;amp;

XML 인코딩에 대한 자세한 설명은 다음을 참조하십시오.

XML 문서에서 어떤 문자를 이스케이프해야합니까?


유니 코드를 사용하는 것은 \u0026어떻습니까? 내 안드로이드 XML 파일에서 작동합니다. 문제가 발생하면 누군가 알려주세요.


<xsl:text disable-output-escaping="yes">&amp;&nbsp;</xsl:text> 트릭을 할 것입니다.


XML이 GET 조치와 함께 제출 된 URI의 일부인 경우 해당 컨텐츠에 앰퍼샌드가 포함 된 경우 XML 요소 컨텐츠를 인코딩하는 방법이 관련 문제입니다. 나는 모든 위에서 언급했는데, 실제로 한 일을하는 유일한 것은 - (그것은 내가 오늘 처리했다 것이었다. 옆 이러한 API의 지혜를 떠나) XML-에 URL 인코딩에 첫 번째 문자를 필요했다 앰퍼샌드 인코딩. 다음 URI에의 XML 부분은 XML 문서 서버 측에로드 되었기 때문에 필요 하였다. 따라서이 재미있는 시나리오에서는 두 인코딩 방법을 함께 스테이플 링해야했습니다.%26amp;%26amp;%26


XML이 아래와 같은지 고려하십시오.

<Employees Id="1" Name="ABC">
  <Query>
    SELECT * FROM EMP WHERE ID=1 AND RES<>'GCF'
  <Query>
</Employees>

<>오류가 발생 하여 직접 사용할 수 없습니다 . 이 경우, &#60;&#62;대신 사용할 수 있습니다 .

<Employees Id="1" Name="ABC">
  <Query>
    SELECT * FROM EMP WHERE ID=1 AND RES &#60;&#62; 'GCF'
  <Query>
</Employees>

모든 코드를 보려면 여기클릭하십시오 .

참고 URL : https://stackoverflow.com/questions/1328538/how-do-i-escape-ampersands-in-xml-so-they-are-rendered-as-entities-in-html



반응형