Так как Ваш вопрос включает использование DevEnv из командной строки, я также предложил бы использовать MSBuild (который может создать .sln файлы без модификации).
msbuild /fl /flp:Verbosity=diagnostic Your.sln
msbuild /?
покажет Вам другие полезные варианты для filelogger.
Эти два варианта почти одинаковы. Вот вам два варианта:
<html>This is <b>bold</b></html>
<html><![CDATA[This is <b>bold</b>]]></html>
В обоих случаях вы должны проверить строку на наличие специальных символов, которые нужно экранировать. Многие люди делают вид, что строки CDATA не нуждаются в экранировании, но, как вы указываете, вы должны убедиться, что "]]>" не проскальзывает без экранирования.
В обоих случаях XML-процессор вернет ваша строка вам расшифрована.
Я не знаю, какой построитель XML вы используете, но PHP (на самом деле libxml) знает, как обрабатывать ]]>
внутри разделов CDATA, и поэтому каждый другая структура XML. Итак, я бы использовал раздел CDATA.
CDATA легче читать на глаз, в то время как закодированный контент может безопасно содержать маркеры конца CDATA - но вам не о чем беспокоиться. Просто используйте библиотеку XML и не беспокойтесь об этом. Затем все, что вам нужно сказать, это «Поместите этот текст в этот элемент», и библиотека либо закодирует его, либо заключит в маркеры CDATA.
Лично я ненавижу сегменты CDATA, поэтому я бы использовал вместо них кодировку. Конечно, Почему я ненавижу сегменты CDATA? Если бы я знал. В основном личные предпочтения. Мне просто не нравится добавлять «запрещенные символы» в специальный сегмент, где они вдруг снова будут разрешены. Меня просто смущает, когда я вижу разметку XML в сегменте CDATA, а не часть окружающего его XML. По крайней мере, с помощью кодирования я увижу, что оно закодировано.
Хорошие библиотеки XML будут прозрачно обрабатывать как кодирование, так и сегменты CDATA. Болят только глаза.
Имеет смысл обернуть HTML в CDATA. Текст HTML, вероятно, будет состоять из одного значения в XML.
Таким образом, если не заключать его в CDATA, все синтаксические анализаторы XML будут читать его как часть документа XML. Хотя эту проблему легко обойти при использовании xml, почему это лишняя головная боль?
Если вы действительно хотите проанализировать HTML в DOM, тогда лучше прочитать текст HTML и настроить парсер для чтения теста отдельно.
Надеюсь, что все вышло так, как я задумал.
Я думаю, что ответ зависит от того, что вы планируете делать с html-контентом, а также от того, какой тип html-контента вы планируете поддерживать.
Особенно когда речь идет о включенном javascript, кодирование часто приводит к проблемам. CDATA определенно поможет вам в этом.
Если вы планируете использовать только небольшие фрагменты (например, абзац) и у вас есть способ предварительно обработать / отфильтровать его (потому что oyu в любом случае не хочет javascript или каких-то необычных вещей), вам, вероятно, будет лучше с кодированием или просто добавлением это прямо как поддерево в xml. Затем вы также можете постобработать html (то есть стиль фильтра или атрибуты onclick). Но это определенно больше работы.
Кодирование будет работать нормально и надежно. Вы можете без труда кодировать закодированные разделы и т. Д.
Декодирование будет выполняться автоматически любым анализатором XML, который используется для обработки закодированного HTML.
Вы можете использовать комбинацию обоих.
Например: вы хотите передать
в узле xml, вы должны использовать секцию CDATA для его передачи. Содержимое внутри ....
должно быть закодировано в html-объекты, например, ...
& lt;
для <
.
Кодирование между тегами решит проблему]]> интерпретации, поскольку оно преобразуется в ]] & gt;
, а теги html не содержат ]]>
.
Вы можете сделать это только в том случае, если HTML-код создается вами самостоятельно.
Если ваш HTML-код в порядке -формируется, а затем просто вставлять HTML-теги без экранирования или переноса в CDTATA. Если возможно, это помогает сохранить ваш контент в XML. Это дает вам больше гибкости для преобразования и управления документом.
Вы можете установить пространство имен для HTML, чтобы можно было отделить ваши HTML-теги от других XML-тегов, обертывающих его.
Экранированный текст означает, что весь HTML-блок будет одним большим текстовым узлом. Обертка в CDATA сообщает синтаксическому анализатору XML не анализировать этот раздел. Это может быть «проще», но ограничивает ваши возможности и может использоваться только тогда, когда это необходимо; не только потому, что так удобнее. Экранированная разметка считается вредоносной.