我的C#代码根据输入生成多个文本文件并将其保存在文件夹中.另外,我假设文本文件的名称将是相同的输入.(输入只包含字母)如果两个文件具有相同的名称则简单地覆盖以前的文件.但我想保留这两个文件.
我不想将当前日期时间或随机数附加到第二个文件名.相反,我希望以与Windows相同的方式执行此操作.如果最前一页文件名是AAA.txt,然后第二个文件名是AAA(2).txt文件,第三文件名将是AAA(3)的.txt .....第N文件名将是AAA(N)的.txt .
string[] allFiles = Directory.GetFiles(folderPath).Select(filename => Path.GetFileNameWithoutExtension(filename)).ToArray();
foreach (var item in allFiles)
{
//newFileName is the txt file which is going to be saved in the provided folder
if (newFileName.Equals(item, StringComparison.InvariantCultureIgnoreCase))
{
// What to do here ?
}
}
Run Code Online (Sandbox Code Playgroud) 我有一个C#应用程序,我想将文件复制到一个新位置.有时我需要覆盖现有文件.当发生这种情况时,我收到一个System.IO.IOException.我想从共享冲突中恢复但是如何确定是否返回了IOException,因为目标文件正在使用而不是其他原因?我可以查找"进程无法访问该文件,因为它正被另一个进程使用".消息...但我不喜欢这个主意.