fgm24/Assets/Plugins/ParrelSync/Editor/FileUtilities.cs

31 lines
813 B
C#
Raw Normal View History

2024-02-14 15:34:22 +01:00
using System.IO;
using UnityEngine;
namespace ParrelSync
{
public class FileUtilities
{
public static bool IsFileLocked(string path)
{
FileInfo file = new FileInfo(path);
try
{
using (FileStream stream = file.Open(FileMode.Open, FileAccess.Read, FileShare.None))
{
stream.Close();
}
}
catch (IOException)
{
//the file is unavailable because it is:
//still being written to
//or being processed by another thread
//or does not exist (has already been processed)
return true;
}
//file is not locked
return false;
}
}
}