在c#中复制另一个文件内容

时间:2012-05-31 08:40:42

标签: c#

我想用C#

将一个文件的选择部分复制到另一个文件中

例如,假设我有一个包含以下内容的文件:

<div id="1"> contents of this div.. </div>
<div id="2"> contents of this div.. </div>
<div id="3"> contents of this div.. </div>

现在,如果我只想将行<div id="2"> contents of this div.. </div>复制到新文件中。那我怎么能有效地做到这一点?

3 个答案:

答案 0 :(得分:2)

使用XPath选择内容,然后导出到第二个文件。

e.g。

XmlDocument document = new XmlDocument();
document.LoadXml(data);
XmlNode node = document.SelectSingleNode("//div[@id='2']");
SaveToFile(node.InnerText);

阅读here了解XPath示例

答案 1 :(得分:1)

使用正则表达式,例如,提取你想要的东西

<div id="2">(.*)</div>

答案 2 :(得分:1)

有多种方法可以解决这个问题:

  1. 您可以使用Regex选择应复制的部分
  2. XPath也可用于选择内容
  3. 如果是html,您也可以使用HTML Agility Pack
  4. HTML敏捷性示例:

    var doc = new HtmlWeb().Load(url);
    var comments = doc.Descendants("div")
                      .Where(div => div.GetAttributeValue("class", "") == "comment");
    

    Here您可以通过C#(包括示例)找到解析HTML字段的不同方法的概述