【问题标题】:creating then writing to file c# [duplicate]创建然后写入文件c#[重复]
【发布时间】:2015-02-23 14:33:25
【问题描述】:

在我的 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();
}

【问题讨论】:

    标签: c#


    【解决方案1】:

    File.Create 返回一个 FileStream - 但你没有关闭它。

    老实说,您最好将 all 代码替换为:

    File.WriteAllText(FilePath, filePresent);
    

    这将在必要时创建一个文件,如果它已经存在则截断它。写入数据时它将关闭流。整体更简单。

    【讨论】:

      猜你喜欢
      • 2017-08-21
      • 1970-01-01
      • 2020-06-13
      • 2018-01-23
      • 1970-01-01
      • 2013-11-04
      • 1970-01-01
      • 1970-01-01
      • 2011-12-13
      相关资源
      最近更新 更多