在该文件夹中创建一个新文件夹和一个文本文件

时间:2010-11-22 10:29:46

标签: c#

我想创建一个名为log的新文件夹,并在我要创建的文件夹中 一个名为log.txt的文本文件,这是我想要创建的路径D:\New Folder

我试过这个来创建一个名为log

的新文件夹
string FilePathSave = Folder.ToString() + System.IO.Directory.CreateDirectory(@"D:\New Folder\Log");

我使用此

创建了一个文本文件
string FilePathSave = Folder.ToString() +"log.txt";
File.WriteAllText(FilePathSave, TextBox1.Text);                

但我不能创建像D:\New Folder\Log\log.txt ...任何建议??

5 个答案:

答案 0 :(得分:32)

Urm,是这样的?

var dir = @"D:\New folder\log";  // folder location

if(!Directory.Exists(dir))  // if it doesn't exist, create
    Directory.CreateDirectory(dir);

// use Path.Combine to combine 2 strings to a path
File.WriteAllText(Path.Combine(dir, "log.txt"), "blah blah, text");

答案 1 :(得分:7)

    string dir = @"D:\New Folder\Log";
    if (!Directory.Exists(dir))
    {
        Directory.CreateDirectory(dir);
    }

    File.WriteAllText(Path.Combine(dir, "log.txt"), TextBox1.Text);

答案 2 :(得分:5)

尝试在此使用Path.Combine

string folder = Path.Combine(root, "log");
if(!Directory.Exists(folder)) Directory.CreateDirectory(folder);
string file = Path.Combine(folder, "log.txt");
File.WriteAllText(file, text);   

答案 3 :(得分:3)

这个问题的所有其他答案都是正确的。但我想指出 Directory.Exists不是必需的。即使目录已存在,Directory.CreateDirectory也不会抛出任何异常。代码可以像以下三行一样简单。

const string Folder = @"C:\temp"
Directory.CreateDirectory(Folder);
File.WriteAllText(Path.Combine(Folder, "log.txt"), "This is the test you want to write");

答案 4 :(得分:0)

string d = "D:\\New Folder";  

if (!Directory.Exists)  
  Directory.CreateDirectory(d);

File.WriteAllText(d + "\\log.txt", textBox1.Text);

并将使用System.IO指令添加到表单中。