共通関数

[C#共通関数] ファイルがロックされているかどうか判定する

指定したファイルがロックされているかどうか判定する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が返ります。
    (ファイル存在チェックは行った上で当関数をご使用ください。)

関連記事

-共通関数
-