急!C# 从文件名里去处特殊字符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了急!C# 从文件名里去处特殊字符相关的知识,希望对你有一定的参考价值。

从Mac-OS传上来的文件。
怎样从文件名里去处以下特殊字符,如果文件名全是由特殊字符组成的话,就报错。
请高手指教,谢谢了
: ; / \ | , * ? " < >

using System.Text.RegularExpressions;//添加命名空间

string str = "a:b/c;d*e?f<g.txt";//文件名
string reg = @"\:"+@"|\;"+@"|\/"+@"|\\"+@"|\|"+@"|\,"+@"|\*"+@"|\?"+@"|\"""+@"|\<"+@"|\>";//特殊字符
Regex r=new Regex(reg);
string strFiltered = r.Replace(str,"");//将特殊字符替换为""
if(strFiltered.IndexOf('.')==0)

MessageBox.Show("文件名都为特殊字符!");//文件名全是特殊字符,则报错

else

MessageBox.Show(strFiltered);//输出 abcdefg.txt
参考技术A 读取文件名,,,把特殊符号替换成 空 就相当于去掉了. 参考技术B 如果有VS就好了,它有一个验证控件

以上是关于急!C# 从文件名里去处特殊字符的主要内容,如果未能解决你的问题,请参考以下文章

我想从文件名中删除特殊字符而不影响 c# 中的扩展名

从C#中的数据中删除特殊字符后如何将dbf文件中的数百万行数据上传到SQL Server

Java用正则表达式 过滤特殊字符,只允许中文、字母或数字,该怎么写?急。。。。

ASP C#:特殊字符:#、$、+ 不能通过 URL 参数

sqlserver服务器名称有斜杠(\)怎么输入到C#工具里不报错

使用 C# 使用特殊字符写入 XML 文档