最佳答案
我试图确定用户输入的字符串对于表示文件夹路径是否有效。有效,我的意思是格式正确。
在我的应用程序中,该文件夹表示一个安装目的地。假设文件夹路径 是有效,我想确定该文件夹是否存在,如果不存在则创建它。
我目前正在使用 IO.Directory.Exists( String path )
。我发现,除了当用户没有正确格式化字符串时,这种方法可以很好地工作。当这种情况发生时,此方法将返回 false,表明该文件夹不存在。但这是一个问题,因为我不能创建文件夹后。
从我的谷歌我发现了一个建议,使用正则表达式来检查格式是否正确。我没有使用正则表达式的经验,我想知道这是否是一种可行的方法。以下是我的发现:
Regex r = new Regex( @"^(([a-zA-Z]\:)|(\\))(\\{1}|((\\{1})[^\\]([^/:*?<>""|]*))+)$" );
return r.IsMatch( path );
一个正则表达式与 Directory.Exists()
相结合的测试,是否会给我一个 很好方法来检查路径是否有效以及它是否存在?我知道这将随着操作系统和其他因素的不同而有所不同,但是这个程序只针对 窗户用户。