2014-01-31 4 views
1


Я отправляю XML-данные в клиентское программное обеспечение с использованием TCP/IP. Мое программное обеспечение написано на C, и я генерирую XML-данные вручную с помощью конкатенаций строк. И клиентское программное обеспечение отображает XML в текстовом поле.
Проблема заключается в том, я создать XML-данные, такие как:Как сделать читаемые xml-теги

<root><name>My name</name><surname>My surname</surname></root> 

Но наш клиент, который использует программное обеспечение клиент хочет, чтобы увидеть этот XML-текст более понятным, как:

<root> 
    <name>My name</name> 
    <surname>My surname</surname> 
</root> 

Я могу только добавить новую строку chars (\ r \ n) в конце каждого tag и некоторого \ t, чтобы сделать его более читаемым, но я не знаю, разрывает ли он синтаксис xml или нет.
Мой вопрос: что я могу сделать, чтобы сделать xml-данные более читаемыми в текстовом поле, в то время как синтаксис xml остается верным?

ответ

2

Написание XML с использованием конкатенации строк - это, как правило, плохая идея. Очень легко ошибиться (например, не удается избежать специальных символов), а это означает, что когда люди просят вас получить более красивый вывод, вам нужно улучшить свой код, а не просто устанавливать переключатель в какой-либо библиотеке.

Поэтому вам следует переключиться на использование библиотеки сериализации вместо того, чтобы делать это вручную.

Я не работаю в C пространстве сам, но вот предложение от кого-то, кто делает:

C tree XML serialization

Смежные вопросы