C# 如何使用double(.)(.)验证安全文件名;文件名..pdf";

C# 如何使用double(.)(.)验证安全文件名;文件名..pdf";,c#,.net,string,filepath,C#,.net,String,Filepath,我正在研究如何在我的Web应用程序中创建一个安全的文件名上一篇文章我在这里读了很多文章,但我找不到这个例子的解决方案当文件名以“filename..pdf”(双点)的方式出现时,浏览器至少不能打开IE文件,至少对于windows来说是一个安全的文件名,那么我如何搜索这个异常并删除双点,我现在看到的是下面的示例(显然没有删除双点): foreach (var c in Path.GetInvalidFileNameChars()) { fileName = fileName.Replace(c,

我正在研究如何在我的Web应用程序中创建一个安全的文件名上一篇文章我在这里读了很多文章,但我找不到这个例子的解决方案当文件名以“filename..pdf”(双点)的方式出现时,浏览器至少不能打开IE文件,至少对于windows来说是一个安全的文件名,那么我如何搜索这个异常并删除双点,我现在看到的是下面的示例(显然没有删除双点):

foreach (var c in Path.GetInvalidFileNameChars()) { fileName = fileName.Replace(c, '-'); }

之后我会做一个额外的检查,并将
替换为

foreach (var c in Path.GetInvalidFileNameChars())
    fileName = fileName.Replace(c, '-');

fileName = fileName.Replace("..", ".");

是的,在DIT中,如果文件路径中间有点像No.FielTime.PDF,那么这将是一个问题,但这不是问题,浏览器可以打开文件而没有问题,我猜这个简单的方法很有用。