惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - 聂微东
爱范儿
爱范儿
博客园 - 三生石上(FineUI控件)
Recent Announcements
Recent Announcements
大猫的无限游戏
大猫的无限游戏
MongoDB | Blog
MongoDB | Blog
A
About on SuperTechFans
M
MIT News - Artificial intelligence
V
Visual Studio Blog
云风的 BLOG
云风的 BLOG
The GitHub Blog
The GitHub Blog
Jina AI
Jina AI
P
Proofpoint News Feed
博客园_首页
酷 壳 – CoolShell
酷 壳 – CoolShell
T
The Blog of Author Tim Ferriss
G
Google Developers Blog
宝玉的分享
宝玉的分享
Engineering at Meta
Engineering at Meta
Last Week in AI
Last Week in AI
aimingoo的专栏
aimingoo的专栏
罗磊的独立博客
N
Netflix TechBlog - Medium
人人都是产品经理
人人都是产品经理

博客园 - refuly

【半原创】将js和css文件装入localStorage加速程序执行 SqlAgent备份脚本 ASP.net 使用HttpHandler实现图片防盗链 提取HTML代码中文字的C#函数 - refuly - 博客园 水晶头的制作 解决ASP.NET“类型初始值设定项引发异常” 解决vs2005 经WebDeployment发布后 global.asax 事件不启动 C# 实现Epson热敏打印机打印 Pos机用 window.onbeforeunload与window.onunlad对比 用Response.Filter生成静态页[要注意并发问题] HttpModule通过修改CSS切换皮肤 asp.net Excel导入&导出 - refuly - 博客园 计算机端口的介绍 Sql Server数据导出EXCEL 获取字符串的真实长度 c# 小数位数处理 新旧身份证合法性验证及验证算法 C#进制转换 Asp.net 备份、还原Ms SQLServer及压缩Access数据库
去掉文件名中的非法字符 - refuly - 博客园
refuly · 2009-10-30 · via 博客园 - refuly

今天在做一个文件下载功能时,发现文件名要从数据库中的某个字段去取,而该字段并没有保证不会使用到非法的字符,如 \ / : * ? " < > |

所有我就自己写了一个简单的方法进行替换,代码如下:

        /// <summary>
        
/// 去掉文件名中的无效字符,如 \ / : * ? " < > | 
        
/// </summary>
        
/// <param name="fileName">待处理的文件名</param>
        
/// <returns>处理后的文件名</returns>
        public string ReplaceBadCharOfFileName(string fileName)
        {
            
string str=fileName;
            str
=str.Replace("\\",string.Empty);
            str
=str.Replace("/",string.Empty);
            str
=str.Replace(":",string.Empty);
            str
=str.Replace("*",string.Empty);
            str
=str.Replace("?",string.Empty);
            str
=str.Replace("\"",string.Empty);
            str=str.Replace("<",string.Empty);
            str
=str.Replace(">",string.Empty);
            str
=str.Replace("|",string.Empty);
            str
=str.Replace(" ",string.Empty);    //前面的替换会产生空格,最后将其一并替换掉
            return str;
        }

问题是最后必须要做一个处理,就是最后会产生空格,没办法再加上一句一并替换了才没出问题。