gpt4 book ai didi

c# - 如果文件已存在且在 C# 中具有相同位置,则始终创建新文件

转载 作者:太空宇宙 更新时间:2023-11-03 22:15:36 24 4
gpt4 key购买 nike

我使用下面的代码创建了一个新文件。但是如果文件已经存在,那么我需要用另一个文件名创建一个新文件。这可能吗?

FileStream fs = new FileStream(filePath, FileMode.Append, FileAccess.Write, FileShare.ReadWrite);
BinaryWriter bw = new BinaryWriter(fs);

bw.Write(b);
bw.Close();
fs.Dispose();

我的文件保存位置相同。

最佳答案

如果您使用 FileMode.CreateNew,如果文件已经存在,它将抛出异常。

CreateNew
Specifies that the operating system should create a new file. This requires FileIOPermissionAccess.Write. If the file already exists, an IOException is thrown.
http://msdn.microsoft.com/en-us/library/system.io.filemode.aspx

您可以将它与 File.Exists 一起使用以减少异常的可能性,但仅使用 File.Exists 是有问题的。可以在您的存在检查和打开它之间创建一个文件。如果文件不太可能存在(例如,您正在使用随机生成的名称),则完全跳过 File.Exists 检查。

关于c# - 如果文件已存在且在 C# 中具有相同位置,则始终创建新文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5270919/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com