2
次のサンプルコードがあります。ファイルまたはディレクトリが存在する場合はtrue;:MSDNによるとディレクトリを作成してExistsプロパティをtrueに更新しません。
private DirectoryInfo PathDirectoryInfo
{
get
{
if (_directoryInfo == null)
{
// Some logic to create the path
// var path = ...
_directoryInfo = new DirectoryInfo(path);
}
return _directoryInfo;
}
}
public voide SaveFile(string filename)
{
if (!PathDirectoryInfo.Exists)
{
PathDirectoryInfo.Create();
}
// PathDirectoryInfo.Exists returns false despite the folder has been created.
bool folderCreated = PathDirectoryInfo.Exists; // folderCreated == false
// Save the file
// ...
}
:
は、プロパティ存在しますそれ以外の場合はfalseです。
ディレクトリが作成された後、なぜ虚偽のリターンが存在しますか?何か不足していますか?
許可の問題ですか? 'PathDirectoryInfo.Exists'は、ファイルパスを決定しようとしているときにエラーが発生した場合に' false'を返します。 – Hypnobrew
'DirectoryInfo'に対して' Refresh'を呼び出すことを試みてください。 – jmcilhinney