Illegal characters in path
执行ClearInvalidChars后,清除完成!
public static string ClearInvalidChars(string fullname) { var source = fullname; char[] cp = new char[] { '\u002A', '\u003A', '\u003F','\u0022','\u003C', '\u003E', '\u007C' }; var root = fullname.Substring(0, fullname.IndexOf(":")+1); var relative = fullname.Substring(fullname.IndexOf(":")+1, fullname.Length- fullname.IndexOf(":")-1); foreach (var c in cp) { relative = relative.Replace(c.ToString(), "_"); } fullname = root + relative; var chars = Path.GetInvalidPathChars(); foreach (var c in chars) { fullname = fullname.Replace(c.ToString(), "_"); } chars = Path.GetInvalidFileNameChars(); var path = Path.GetDirectoryName(fullname); var filename = Path.GetFileName(fullname); foreach (var c in chars) { filename = filename.Replace(c.ToString(), "_"); } return Path.Combine(path, filename); }