最近我在求职面试时被问到这个问题.我是诚实的,并说我知道符号链接的行为以及如何创建一个,但不理解硬链接的使用以及它与符号链接的区别.
我试图确定用户输入的字符串是否有效表示文件夹的路径.有效,我的意思是格式正确.
在我的应用程序中,该文件夹代表安装目标.提供的文件夹路径是有效的,我想,以确定是否该文件夹存在,并创建它,如果它没有.
我目前正在使用IO.Directory.Exists( String path )
.我发现这很好用,除非用户没有正确格式化字符串.发生这种情况时,此方法将返回false,表示该文件夹不存在.但这是一个问题,因为我之后将无法创建该文件夹.
从我的谷歌搜索我发现一个建议使用正则表达式来检查格式是否正确.我没有正则表达式的经验,我想知道这是否是一种可行的方法.这是我发现的:
Regex r = new Regex( @"^(([a-zA-Z]\:)|(\\))(\\{1}|((\\{1})[^\\]([^/:*?<>""|]*))+)$" );
return r.IsMatch( path );
Run Code Online (Sandbox Code Playgroud)
将正则表达式测试结合起来Directory.Exists()
,给我一个足够好的方法来检查路径是否有效以及它是否存在?我知道这会因操作系统和其他因素而异,但该程序仅针对Windows用户.