【发布时间】:2010-03-11 00:47:44
【问题描述】:
var fileOpen = new OpenFileDialog(); var clickedOk = fileOpen.ShowDialog(); if (!((bool) clickedOk)) return;
var path = fileOpen.FileName;
var diPath = new DirectoryInfo(path);
var fiPath = new FileInfo(path);
Debug.WriteLine(diPath.Exists);
我只是想知道为什么 diPath.Exists 在这种情况下是错误的?既然用户选择了一个文件,那么该目录一定存在!?它确实......
我已经使用Directory.Exists(fiPath.DirectoryName) 解决了这个问题,但上面的方法不起作用似乎很奇怪,并且需要其他 var 来检查我知道是否存在并且应该能够使用 diPath。这是怎么回事?
还有一个相关的问题,假设我有一个目录 C:\random\spot\here 的目录信息,为什么没有办法获取字符串 "C:\random\spot\here" 似乎我只能得到父母“现场”或名称“这里”。也许我错过了什么。
谢谢,
【问题讨论】:
标签: c# boolean fileinfo directoryinfo