Как закомментировать блок тегов в XML? - PullRequest
750 голосов
/ 03 мая 2010

Как закомментировать блок тегов в XML?

т.е. Как я могу закомментировать <staticText> и все внутри него, в коде ниже?

  <detail>
    <band height="20">
      <staticText>
        <reportElement x="180" y="0" width="200" height="20"/>
        <text><![CDATA[Hello World!]]></text>
      </staticText>
    </band>
  </detail>

Я мог бы использовать <!-- staticText-->, но это только для отдельных тегов (как я знаю), таких как // в Java и C. Я хотел бы что-то более похожее на то, как /** comment **/ можно использовать в Java и C, поэтому Я могу закомментировать более длинные блоки кода XML.

Ответы [ 6 ]

1072 голосов
/ 03 мая 2010

Вы можете использовать этот стиль комментария в нескольких строках (который также существует в HTML)

<detail>
    <band height="20">
    <!--
      Hello,
         I am a multi-line XML comment
         <staticText>
            <reportElement x="180" y="0" width="200" height="20"/>
            <text><![CDATA[Hello World!]]></text>
          </staticText>
      -->
     </band>
</detail>
152 голосов
/ 01 февраля 2013

Вы можете обернуть текст несуществующей инструкцией обработки, например ::10000

<detail>
<?ignore
  <band height="20">
    <staticText>
      <reportElement x="180" y="0" width="200" height="20"/>
      <text><![CDATA[Hello World!]]></text>
    </staticText>
  </band>
?>
</detail>

Вложенные инструкции обработки не допускаются, и «?>» Завершает инструкцию обработки (см. http://www.w3.org/TR/REC-xml/#sec-pi)

144 голосов
/ 03 мая 2010

Если вы спросите, потому что у вас есть ошибки с синтаксисом <!-- -->, это, скорее всего, раздел CDATA (а там часть ]]>), который затем находится в середине комментария. Это не должно не иметь значения, но идеальный и реальный мир иногда может быть немного обособленным (особенно когда речь идет об обработке XML).

Попробуйте изменить ]]> тоже:

  <!--detail>
    <band height="20">
      <staticText>
        <reportElement x="180" y="0" width="200" height="20"/>
        <text><![CDATA[Hello World!]--><!--]></text>
      </staticText>
    </band>
  </detail-->

Еще одна вещь, которая приходит на ум: если содержимое вашего XML где-то содержит два дефиса, комментарий тут же заканчивается:

<!-- <a> This is strange -- but true!</a> -->
--------------------------^ comment ends here

Это довольно распространенная ловушка. Он унаследован от того, как SGML обрабатывает комментарии. ( Прочитайте спецификацию XML по этой теме )

47 голосов
/ 03 мая 2010

На самом деле, вы можете использоватьформат с несколькими строками или тегами:

<!--
  ...
  ...
  ...
-->
23 голосов
/ 10 марта 2016

Здесь для комментирования мы должны написать, как показано ниже:

<!-- Your comment here -->

Ярлыки для IntelliJ Idea и Eclipse

Для Windows и Linux:

Ярлык для комментирования одной строки:

Ctrl + /

Ярлык для комментирования нескольких строк:

Ctrl + Shift + /

Для Mac:

Ярлык для комментирования одной строки:

cmnd + /

Ярлык для комментирования нескольких строк:

cmnd + Shift + /

Одна вещь, которую вы должны иметь в виду, вы не можете комментировать атрибут тега XML. Например:

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    <!--android:text="Hello.."-->
    android:textStyle="bold" />

Здесь TextView - это тег XML, а text - это атрибут этого тега. Вы не можете комментировать атрибуты тега XML. Вы должны прокомментировать полный тег XML. Например:

<!--<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="Hello.."
    android:textStyle="bold" />-->
12 голосов
/ 22 мая 2013

Вы можете легко закомментировать данные, используя:

<!-- 
 <data>
        <data-field1></data-field1>
        <data-field2></data-field2>
        <data-field3></data-field3>
 </data>
-->

метод комментирования в xml.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...