Как добавить текст в начало и конец файла в качестве верхнего и нижнего колонтитула? - PullRequest
2 голосов
/ 16 апреля 2010

Я заполняю XML-документ вручную, используя C #, и мне нужно иметь <data> в качестве заголовка и </data> в качестве нижнего колонтитула для всего XML-файла. Есть ли простой способ сделать это? Я знаю, что это можно сделать, но я не мог найти способ сделать это. Помните, что я обновляю записи, поэтому мне нужно убедиться, что они всегда находятся между верхним и нижним колонтитулами.

Спасибо

Пример

<data>

Entry
New Entry 1
New Entry 2

</data>

Ответы [ 3 ]

4 голосов
/ 16 апреля 2010

Что касается добавления текста в файл, это легко, просто откройте файл в режиме добавления и напишите текст.

Для вставки в POSIX или Windows нет способа вставки текста. Таким образом, вам нужно написать новый файл с заголовком, а затем написать остальную часть файла.

2 голосов
/ 16 апреля 2010

Я не уверен, что то, что вы пытаетесь сделать, имеет смысл - и я согласен с Брайаном в том, что у него нет способа предварительно просмотреть файл без записи нового файла. Лучшим подходом было бы сохранить элементы Entry (в отдельном файле или на другом носителе), а затем сгенерировать окончательную версию, как предписывает Брайан.

Если вы манипулируете контентом XML в целом, вы можете рассмотреть возможность использования Linq to XML или собственных .Net XML библиотек .

0 голосов
/ 16 апреля 2010

Что ж, проще всего использовать эти три команды в следующем порядке. Конечно, это не заботится о проверке, если вы уже поместили теги или нет. Для этого вы должны использовать связанные библиотеки XML.

Предположим, файл ab.txt. Запустите эти команды DOS -

echo ^<data^> > new_ab.txt
type ab.txt >> new_ab.txt
echo ^<^/data^> >> new_ab.txt

:)

Есть много способов сделать это. Вы хотите сделать это с помощью кода C #? Это будет немного длинно, чтобы поместить это здесь :) Я уверен, что вы знаете, как читать / писать файлы через C #.

Ура!

Предположение: вы работаете в Windows. Для unix команды намного проще. :)

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