Как мне преобразовать текст в XML в C? - PullRequest
1 голос
/ 23 марта 2010

Как создать программу, которая открывает текстовый файл и преобразует его в файл XML?

XML может выглядеть следующим образом:

<curso>
 <sigla>LTCGM</sigla>
 <NAlunos>1</NAlunos>
 <lista_alunos>
  <aluno>
   <numero>6567</numero>
   <nome>Artur Pereira Ribeiro</nome>
   <email>apereira@gmail.com</email>
   <estado>Aprovado</estado>
   <media_notas>13</media_notas>
   <maior_nota>16</maior_nota>
   <menor_nota>11</menor_nota>
  </aluno>
 </lista_alunos>
</curso>

Ответы [ 2 ]

2 голосов
/ 23 марта 2010

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

Перед тем, как писать вывод, вы должны экранировать те символы, которые имеют особое значение в XML, т.е.<,>, &.

Фактический вывод выполняется, например, fprintf, ничего особенного в этой части нет.

0 голосов
/ 23 марта 2010

Нет простого способа сделать это - потому что не ясно, какая структура нужна в разметке для простого текста.

То, что вы можете сделать, я думаю, это сгенерировать теги XML в первой строке, выдать квази-произвольный начальный тег, скопировать файл, расширив ключевые символы XML ('<', '>', '&' ) в соответствующую нотацию «<», «>», «&», а затем заканчивается конечным тегом, соответствующим начальному тегу.

<?xml version='1.0'?>
<start>
#include &lt;stdio.h&gt;
int main(void) { print("Hello, XML\n"); return 0; }
</start>

Все остальное зависит от знания того, что находится в текстовом файле.

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