Tag: 重命名

在C#中复制文件时检查重复的文件名

我想将文件复制到目录并重命名为特定格式。 但如果文件名已存在,则应在文件扩展名前附加{1},{2}或{3}。 我的代码重命名并复制了文件,并将其命名为我想要的格式,例如filename.pdf,当它检查重复时,它将其重命名为filename1.pdf。 但是当它再次尝试复制时,它给出了一个错误“文件已存在”,但我希望它将其命名为filename02.pdf。 请有人帮助我。 这是我到目前为止编写的代码。 { string fileSource, filesToCopy, target, nextTarget; string sourceDir = @”C:\HCP_PDFs”; string destinationDir = @”C:\RenamedHcpPdfs”; DirectoryInfo di = new DirectoryInfo(destinationDir); // create the directory if it dosnt exist if (!Directory.Exists(destinationDir)) { Directory.CreateDirectory(destinationDir); } foreach (string myFiles in lstBoxFilenames.Items) { filesToCopy = myFiles; fileSource = Path.Combine(sourceDir, filesToCopy); //Extract only HCP Name […]

文件重命名问题?

在c#中重命名文件: File.Move(source,Destination); File.Delete(source); 它成功执行,但是当我再次尝试重命名文件时,系统会给出以下exception: 进程无法访问该文件,因为它正被另一个进程使用。 我无法发现它在哪里使用? 当我进一步调试错误时,它显示我的类名是在w3wp.exe的进程中,这是IIS。 我接下来该怎么办? 越来越 foreach (string folder in folder) { FileSystemItem item = new FileSystemItem(); DirectoryInfo di = new DirectoryInfo(folder); item.Name = di.Name; item.FullName = di.FullName; item.Path = path + “\\” + item.Name; item.CreatedDate = di.CreationTime; item.IsFolder = true; item.Extension = “folder”; listFolder.Add(item); } docList = CreatXmllist(listFolder); return docList 这是我如何获取文件夹列表,然后它返回到xml。 […]

在Visual Studio中一步重命名具有文件名的类

我是一名长期的Java程序员,但目前我用C#编写代码。 我习惯了,当我更改文件名时,类名也会改变,反之亦然。 这在我的Visual Studio中不起作用。 我必须分别重命名类名和文件名,这对我来说有时很烦人,因为我总是忘记它,所以结果是我有不同的类和文件名。 Visual Studio中是否有选项将重命名放在一个步骤中?

当AutoGenerateColumns = True时,如何重命名DataGrid列?

我有一个简单的数据结构类: public class Client { public String name {set; get;} public String claim_number {set; get;} } 我正在加入DataGrid : this.data_grid_clients.ItemSource = this.clients; 我想改变列标题。 即:声明号码为“索赔号”。 我知道这可以通过执行以下操作手动创建列来完成: this.data_grid_clients.Columns[0].Header = “Claim Number” 但是,在自动生成列时, Columns属性为空。 有没有办法重命名列,还是我必须手动生成列?

c#根据下载请求动态重命名文件

尝试下载文件时是否可以重命名文件? 例如,我想使用他们的id将文件存储到文件夹,但是当用户下载文件时,我想返回原始文件名。

重命名具有相同名称的目录不同的情况

我试图将c#中的目录重命名为仅与不同情况相同的名称。 例如:f:\ test到f:\ TEST 我试过这段代码: var directory = new DirectoryInfo(“f:\\test”); directory.MoveTo(“f:\\TEST”); 我得到一个IOException – 源和目标路径必须不同。 我也尝试过具有相同结果的Directory.Move()。 这是怎么做到的? 我是否必须创建一个单独的临时目录,将包含的文件从原始目录移动到临时目录,然后删除原始目录,并重命名临时目录?

当前用户目录与root不同时,无法使用ftp方法重命名文件

备注:由于垃圾邮件防范机制,我被迫将Uris的开头从ftp://替换为ftp。 我有以下问题。 我必须使用C#ftp方法上传文件,然后重命名它。 容易,对吗? 🙂 好吧,假设我的ftp主机是这样的: ftp.contoso.com 登录后,当前目录设置为: 用户/名称 所以,我想要实现的是登录,将文件作为file.ext.tmp上传到当前目录,上传成功后,将文件重命名为file.ext 正如我猜测的那样,整个难题是为FtpWebRequest正确设置请求Uri。 MSDN声明: URI可以是相对的或绝对的。 如果URI的格式为“ ftp://contoso.com/%2fpath”(%2f是转义’/’),那么URI是绝对的,当前目录是/ path。 但是,如果URI的格式为“ ftp://contoso.com/path ”,则首先.NET Framework登录到FTP服务器(使用Credentials属性设置的用户名和密码),然后是当前目录设置为UserLoginDirectory / path。 好的,所以我使用以下URI上传文件: ftp.contoso.com/file.ext.tmp 好的,文件落在我想要的位置:在目录“users / name”中 现在,我想重命名该文件,因此我使用以下Uri创建Web请求: ftp.contoso.com/file.ext.tmp 并指定重命名为参数: file.ext 这给了我550错误:找不到文件,没有权限等。 我在Microsoft网络监视器中跟踪了它,它给了我: 命令:RNFR,重命名自 CommandParameter:/file.ext.tmp Ftp:响应端口53724,’550文件/file.ext.tmp未找到’ 好像是在根目录中查找文件 – 而不是在当前目录中。 我使用Total Commander手动重命名了文件,唯一的区别是CommandParameter没有第一个斜杠: CommandParameter:file.ext.tmp 我可以通过提供以下绝对URI来成功重命名该文件: ftp.contoso.com/%2fusers/%2fname/file.ext.tmp 但我不喜欢这种方法,因为我必须知道当前用户目录的名称。 它可以通过使用WebRequestMethods.Ftp.PrintWorkingDirectory来完成,但它增加了额外的复杂性(调用此方法来检索目录名称,然后组合路径以形成正确的URI)。 我不明白为什么URI ftp.contoso.com/file.ext.tmp适合上传而不是重命名? 我在这里错过了什么吗? 该项目设置为.NET 4.0,在Visual Studio 2010中编码。 编辑 好的,我放置了代码片段。 […]

Json.net重命名属性

我有一个表示JSON的字符串,我想使用JSON.NET重命名一些属性。 我需要一个generics函数来用于任何JSON。 就像是: public static void Rename(JContainer container, Dictiontionary mapping) { foreach (JToken el in container.Children()) { JProperty p = el as JProperty; if(el != null && mapping.ContainsKey(p.Name)) { // **RENAME THIS NODE!!** } // recursively rename nodes JContainer pcont = el as JContainer; if(pcont != null) { Rename(pcont, mapping); } } } 怎么做??