How do I create directory if it doesn't exist to create a file?

Diskdrive picture Diskdrive · Jun 2, 2010 · Viewed 162.6k times · Source

I have a piece of code here that breaks if the directory doesn't exist:

System.IO.File.WriteAllText(filePath, content);

In one line (or a few lines), is it possible to check if the directory leading to the new file doesn't exist and if not, to create it before creating the new file?

I'm using .NET 3.5.

Answer

Don picture Don · Jun 2, 2010

To Create

(new FileInfo(filePath)).Directory.Create() Before writing to the file.

....Or, If it exists, then create (else do nothing)

System.IO.FileInfo file = new System.IO.FileInfo(filePath);
file.Directory.Create(); // If the directory already exists, this method does nothing.
System.IO.File.WriteAllText(file.FullName, content);