<,> в XML-документе - PullRequest
       35

<,> в XML-документе

0 голосов
/ 22 января 2009

Когда я пытаюсь вставить знаки вроде <или> в InnerText-часть xml-тега, то после обращения к xml с помощью xmlDocument.InnerXml эти знаки заменяются их html-кодом, таким как & lt или & gt, может кто-то объяснить это мне и, возможно, дать мне решение этой проблемы?

с уважением

Себастьян

Ответы [ 4 ]

5 голосов
/ 22 января 2009

Эти символы необходимо экранировать, поскольку в качестве структуры документа используются угловые скобки. Чтобы решить эту проблему, просто убедитесь, что вы правильно расшифровываете текст.

4 голосов
/ 22 января 2009

Вы также можете попробовать заключить текст в раздел CDATA .

3 голосов
/ 22 января 2009

По определению (см. spec ) в файле XML, < используется для открытия элемента. Точно так же > используется для закрытия элемента.

Чтобы эти (и некоторые другие символы) появлялись в файле XML, они кодируются как сущностей .

Вы должны обнаружить, что все это прозрачно обрабатывается для вас - если вы поместите < в содержимое элемента, оно будет сохранено как &lt; и затем переведено обратно, когда вы снова вернете содержимое.

Если это мешает вам, потому что вы пытаетесь добавить дополнительные элементы в ваш выходной файл, вы должны взглянуть на различные API для непосредственного создания элементов - написание текста не получится.

0 голосов
/ 22 января 2009

Это зависит от того, что вы хотите, чтобы появиться во внутреннем тексте. Если вы на самом деле пытаетесь вставить новый элемент, лучше добавить новый узел в коллекцию Nodes (type = element). Если вы действительно хотите, чтобы текст отображался как <и>, то это уже делает именно то, что вам нужно.

Если вы можете объяснить конечный результат, к которому вы стремитесь, с помощью этой операции, мы можем точно сказать вам, что вам нужно сделать.

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