检查文件名是否存在,然后以其他名称保存

本文关键字:其他 保存 然后 文件名 是否 存在 检查 | 更新日期: 2023-09-27 18:08:08

我正在开发一个Outlook插件,它可以将电子邮件保存到在线sharepoint,但在保存它们之前,我需要检查是否已经存在同名的文件这样它就不会覆盖任何内容,下面是保存文件的方法:

            {
            currExplorer = OutlookApp.ActiveExplorer();
            selection = currExplorer.Selection;
            if (selection != null)
            {
                SharePointHelper spHelper = new SharePointHelper("LoginName", "Password", "Url/FolderDirectory");
                if (selection.Count > 0)
                {
                    for (int i = 1; i <= selection.Count; i++)
                    {
                        var item = selection[i] as Outlook.MailItem;
                        if (item == null) 
                            continue;
                        // Check for attachments and save
                        currMail = item;
                        string fileName = String.Format("{0} - {1}.msg", SafeFileName(currMail.SenderName), SafeFileName(currMail.Subject));
                        string filePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), fileName);
                        currMail.SaveAs(filePath, Outlook.OlSaveAsType.olMSG);
                        System.Net.HttpStatusCode status = spHelper.UploadFile(filePath, fileName); 
                        if (status != System.Net.HttpStatusCode.Created)
                            MessageBox.Show(fileName + " failed to upload.");
                    }
                }
            }
        }

因为我是初学者,所以我缺乏如何去做的经验,衷心感谢您的帮助,谢谢大家!

检查文件名是否存在,然后以其他名称保存

您可以使用System.IO.File。Exists(字符串路径)来确定它是否存在。如果是,您可以更改它的名称,并测试新名称是否已经存在,直到找到尚未使用的名称。

您可以在msdn: http://msdn.microsoft.com/en-us/library/system.io.file.exists.aspx上查看文档

如果你想检查SharePoint文件,你可以看看使用Microsoft.SharePoint.Client.Web和方法GetFileByServerRelativeUrl(string serverRelativeUrl)GetFileByServerRelativeUrl

在asp.net中使用Client对象模型从sharepoint库中获取sharepoint excel文件

一旦你从库加载文件到一个对象,你可以做一个!= null检查,如果文件不是空的,你可以改变文件的名字

使用System.IO.File.Exists(string path)