0

这是我第一次编写代码来执行文件操作。我需要将旧文件与新文件进行比较。如果旧文件名等于新文件名,则需要覆盖(更新)。如果不相等,则创建一个新文件名。如何以简单和最好的方式做到这一点?

public void FileCreateOrOverwritten(string file)
{
    try
    {
        if (File.Exists(file))
        {
            if (file == newFile)
            {
                //how to replace old file with a new one with new data (xml document)
                //need to use filestream
            }
            else
            {
                //how to create a new file with new data (xml document)
            }

        }
        .
        .
        .
    }
4

1 回答 1

0

要(覆盖)写入文件,

using (var writer = File.CreateText(file))
{
    for (...)
    {
        writer.WriteLine(...);
    }
}

然后,您无需决定是要覆盖旧的还是要创建新的。从文档

“此方法相当于StreamWriter(String, Boolean) 构造函数重载,附加参数设置为false。如果path指定的文件不存在,则创建它。如果文件存在,则覆盖其内容”

如果您对此不熟悉,请注意using

于 2013-08-01T09:06:27.460 回答