检查给定的路径字符串是否无效

时间:2012-08-09 09:21:38

标签: c# file-io uri filepath

我这里有一个应该接受文件路径的文本框。我应该如何验证(通过按钮单击)给定的路径文件是否存在?

例如,“C:MyDocs \ sample.txt”应该无效,因为它实际上并不存在于我的本地驱动器中,并且在'C:'之后没有'\'..

我尝试过使用它:

FileInfo fi = new FileInfo(fName);
 if (fi.Exists)
    //do something

但它不能满足我的问题......任何人都可以提出建议吗?

2 个答案:

答案 0 :(得分:5)

if(!File.Exists(filename))
{
// file does not exist or path is invalid
}

答案 1 :(得分:3)

使用Uri.IsWellFormedUriString(path, UriKind.Absolute);检查路径是否有效(如果文件存在则旁边)

在这里阅读Uri验证: http://msdn.microsoft.com/en-us/library/system.uri.iswellformeduristring.aspx

样品:

bool isValid = Uri.IsWellFormedUriString(fName, UriKind.Absolute) &&
               File.Exists(fName);

如果结果为真,您可以确定用户提供的文件格式是否有效且文件系统是否存在文件。