Загрузка нескольких файлов определенного каталога и поиск и замена функции во всех файлах - PullRequest
2 голосов
/ 07 февраля 2012

Я пытаюсь разработать проект, в котором я выполняю последовательность процессов. Я хочу загрузить все файлы определенного типа (* .xhtml) из каталога. Файлы должны открываться во вкладках. Я хочу найти определенный тег и заменить другим тегом во всех файлах, которые находятся и найти и заменить функциональность. Как с этим справиться.

Ответы [ 2 ]

2 голосов
/ 07 февраля 2012

Так в чем же проблема?

  1. Поиск файлов:

    var files = DirectoryInfo.GetFiles("*.xhtml", SearchOption.AllDirectories)

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

  3. См. Ответ Ойбека относительно последнего пункта!

Надеюсь, это помогло.

1 голос
/ 07 февраля 2012

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

Следующий фрагмент кода заменяет узел xml.

var data = @"<foo>
    <items>
        <itemToReplace>
            <itemContent />
        </itemToReplace>
    </items>
</foo>";
        // Load your document
        var doc = XDocument.Parse(data);
        // Get the root
        var root = doc.Element("items");
        // Get all tags that you want to replace
        var repls = doc.Descendants("itemToReplace").ToList();
        // Iterate over
        foreach (var item in repls) {
            // prepare a new element as a replacement for your target.
            // Content will be the same as the content of the element being replaced.
            var newElement = new XElement("newElement", item.DescendantNodes());
            // add the element right after the tag to be replaced
            item.AddAfterSelf(newElement);
            // finally remove the tag.
            item.Remove();
        }
        MessageBox.Show(doc.ToString());

itemToReplace заменяется на newElement. Как вы говорите, XHTML, я предполагаю, что есть какой-то правильно сформированный XML / HTML, который можно анализировать с помощью linq2xml. Приветствия.

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