如何读取父文件夹c#中包含的文件中的数据

时间:2017-07-18 12:55:07

标签: c# .net winforms datagridview

我们有文件夹“TDScript”,其中有11个子文件夹,在这些文件夹中我们每个文件夹有23个JavaScript文件。

现在我想将每个java脚本文件中的“Table”一词替换为各自文件夹的名称。

我通过这段代码。我们只能读取文件名,但不能读取文件中的数据。

代码:

protected void BindGridview()
{
    string strpath = @"e:\vs\tdscripts";
    string[] folders = Directory.GetDirectories(strpath, "*", SearchOption.AllDirectories);
    string[] files = Directory.GetFiles(strpath, "*", SearchOption.AllDirectories);

    foreach (string f in folders)
    {
        listBox1.Items.Add(f);
        foreach (string item in files)
        {
            listBox2.Items.Add(item);
        }
    }
}

private void button1_Click(object sender, EventArgs e)
{
    BindGridview();
}

2 个答案:

答案 0 :(得分:1)

如果没有测试,我认为以下应该适合您

protected void BindGridview()
{
    string strpath = @"e:\vs\tdscripts";
    DirectoryInfo di = new DirectoryInfo(strpath);

    foreach (var file in di.GetFiles("*", SearchOption.AllDirectories))
    {
        string content = File.ReadAllText(file.FullName, Encoding.Default);
        content = content.Replace("Table", file.Directory.Name);
        File.WriteAllText(file.FullName, content, Encoding.Default);
    }
}

答案 1 :(得分:0)

您只是获取该文件夹中的FileFolder个名称。

要阅读文件的内容,您可以使用File.ReadAllText方法或System.IO中的任何其他方法来读取文件的数据。