创建然后写入文件c#

时间:2015-02-23 14:33:25

标签: c#

在我的c#控制台应用程序中,我必须写入文件,如果不是,我必须创建它。当文件已经创建时,它工作正常,但是当我尝试创建文件然后写入它时,我得到一个System.IO.IOException,说该文件正在其他地方使用。这就是我一直在使用的

if (!File.Exists(FilePath))
{
    File.Create(FilePath);
}
FileInfo file = new FileInfo(FilePath);
using (TextWriter tw = new StreamWriter(file.Open(FileMode.Truncate)))
{
    tw.Write(filePresent);
    tw.Close();
}

1 个答案:

答案 0 :(得分:7)

File.Create会返回FileStream - 但您不会关闭它。

说实话,你最好只用以下代码替换所有代码:

File.WriteAllText(FilePath, filePresent);

如果需要,将创建一个文件,如果已存在则截断它。它会在写入数据时关闭流。全面简化。