点击这里给我发消息 点击这里给我发消息

C#文件名、文件夹名中非法字符的过滤

添加时间:2013-12-7
    相关阅读: C# 系统
 

C#新建文件或文件夹时经常抛出异常,提示名称中含有非法字符。这里收集了windows系统下文件夹、文件名称中的敏感非法字符列表和过滤方法。

//非法字符列表

private static readonly char[] InvalidFileNameChars = new[]

{

'"',

'<',

'>',

'|',

'\0',

'\u0001',

'\u0002',

'\u0003',

'\u0004',

'\u0005',

'\u0006',

'\a',

'\b',

'\t',

'\n',

'\v',

'\f',

'\r',

'\u000e',

'\u000f',

'\u0010',

'\u0011',

'\u0012',

'\u0013',

'\u0014',

'\u0015',

'\u0016',

'\u0017',

'\u0018',

'\u0019',

'\u001a',

'\u001b',

'\u001c',

'\u001d',

'\u001e',

'\u001f',

':',

'*',

'?',

'\\',

'/'

};

//过滤方法

public static string CleanInvalidFileName(string fileName)

{

fileName = fileName + "";

fileName = InvalidFileNameChars.Aggregate(fileName, (current, c) => current.Replace(c + "", ""));

 

if (fileName.Length > 1)

if (fileName[0] == '.')

fileName = "dot" + fileName.TrimStart('.');

 

return fileName;

}

 

咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册