Tag: 文件名

已有文件System.IO.Path.GetRandomFileName()的概率

最近我得到了例外: Message: System.IO.IOException: The file ‘C:\Windows\TEMP\635568456627146499.xlsx’ already exists. at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 这是我用于生成文件名的以下代码的结果: Path.Combine(Path.GetTempPath(), DateTime.Now.Ticks + “.xlsx”); 在意识到可以在一个Tick中创建两个文件之后,我将代码更改为: Path.Combine(Path.GetTempPath(), Path.GetRandomFileName() + “.xlsx”); 但我仍然想知道新案件中上述例外的可能性是多少?

将url转换为有效的文件名并返回到url

我需要存储一些对我的用户访问的每个站点唯一的信息。 (它实际上是他查看过的网站的缩略图。) 此缩略图(jpeg文件)需要有一个名称,指明它代表的网站,以便稍后查看。 你能推荐从url到有效文件名的简单翻译吗? 示例: www.ibm.com可以映射到www_ibm_com 。 在某些情况下,我不确定这将始终适用于所有有效url。url具有非常复杂的查询字符串。 是否有可以使用的正则表达式或c#库? 提前谢谢,并感到高兴。

无法在文件名末尾复制/移动带空格的文件

真的很疯狂! 我使用Far 2.0创建了一个文件( http://www.farmanager.com/ ,也许你可以使用其他文件管理器); 它的文件名是’C:\ 123.txt’ (是的,文件路径末尾有空格) 。 我正在尝试使用C#程序复制或移动此文件: File.Copy(“C:\\123.txt “, “C:\\456.txt”, true); 但它失败了“无法找到文件’C:\ 123.txt’。” 例外。 但文件存在! 我正在尝试Windows API: [DllImport(“kernel32.dll”)] public static extern int MoveFile(string lpExistingFileName, string lpNewFileName); MoveFile(“C:\\123.txt “, “C:\\456.txt”,); 但它也失败了。 我正在尝试xcopy实用程序: C:\>xcopy “C:\123.txt ” “C:\456.txt” /Y File not found – 123.txt 0 File(s) copied 如何以编程方式重命名文件? 为什么会发生这种情况? 我的操作系统:Windows 7 x64

我如何确保C#的Process.Start将扩展环境变量?

我正在尝试创建一个这样的过程: var psi = new ProcessStartInfo { FileName = @”%red_root%\bin\texturepreviewer.exe”, UseShellExecute = true }; var process = Process.Start(psi); process.WaitForExit(); 现在环境变量“red_root”肯定存在于生成进程的环境变量中,但是执行似乎没有扩展环境变量,因此找不到该文件。 如何让Process.Start扩展文件名中的环境变量?

在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#/。NET Server默认/索引页面的路径

在我试图进一步certificate项目未来的过程中,我试图找到使用C#检索Web目录中索引/默认页面的完整路径和文件名的最佳方法,而不知道Web服务器的文件名列表可能性。 ‘Server.MapPath(“/ test /”)’给我’C:\ www \ test \’ ……所以:’Server.MapPath(Page.ResolveUrl(“/ test /”))’ …但我需要’C:\ www \ test \ index.html’。 有没有人知道现有的检索文件名的方法,当有人浏览到该目录时,网络服务器将提供该文件名 – 无论是default.aspx,还是index.html,还是其他什么? 感谢任何帮助,饲料

C#从邮件附件中获取文件名

我有一个简单的C#应用​​程序发送SMTP电子邮件(使用System.Net.Mail类)。 发送(通过电子邮件发送)MailMessage对象后,我想遍历附件列表并删除与这些附件相关联的原始文件…但我很难找到与每个附件关联的完整文件路径 – 而不保留我的自己的附件文件路径集合。 必须有一种从附件对象中提取完整文件路径的好方法。 我知道这必须简单,但我花了很多时间在这个……时间问别人。

我应该用通用类定义命名我的文件?

我正在编写几个都有generics类型参数的类,但是我需要重载类,因为在不同的场景中我需要不同数量的参数。 基本上,我有 public class MyGenericClass { … } public class MyGenericClass { … } public class MyGenericClass { … } // it could go on forever, but it won’t… 我希望它们都在同一个命名空间中,但每个类在一个源文件中。 我该怎么命名文件? 有最好的做法吗?

一种使用RegEx在字符串中查找一组文件名路径的方法

早上好家伙 有没有一种在C#中使用正则表达式的好方法,以便在string变量中查找所有文件名及其路径? 例如,如果您有此字符串: string s = @”Hello John these are the files you have to send us today: C:\Development\Projects 2010\Accounting\file20101130.csv, C:\Development\Projects 2010\Accounting\orders20101130.docx also we would like you to send C:\Development\Projects 2010\Accounting\customersupdated.xls thank you”; 结果将是: C:\Development\Projects 2010\Accounting\file20101130.csv C:\Development\Projects 2010\Accounting\orders20101130.docx C:\Development\Projects 2010\Accounting\customersupdated.xls 编辑:考虑到@Jim的内容,我编辑了字符串添加标签,以便更容易从字符串中提取所需的文件名!

如何检索目录中的所有文件名?

如何检索与目录中的模式匹配的所有文件名? 我试过这个,但它返回完整路径而不是文件名。 Directory.GetFiles (path, “*.txt”) 我是否必须手动裁剪结果的目录路径? 它很简单,但也许有一个更简单的解决方案:)