指定したファイルがロックされているかどうか判定するFunctionです。
サンプル
・指定したファイルがロックされているかどうか判定するFunction
using System.IO;
/// <summary>
/// ファイルがロックされているか判定する
/// </summary>
/// <param name="path">ファイルパス</param>
/// <returns>true:ロック中 false:ロックされていない</returns>
public static bool IsLocked(string path)
{
bool result = false;
FileStream st = null;
try
{
st = new FileStream(
path,
FileMode.Open,
FileAccess.ReadWrite,
FileShare.None
);
}
catch(Exception e)
{
result = true;
}
finally
{
if (st != null) st.Close();
}
return result;
}
(使用例)
bool a = IsLocked(@"C:\test.txt");
備考
- 存在しないパスを指定した場合は常にtrueが返ります。
(ファイル存在チェックは行った上で当関数をご使用ください。)