首页 > 代码库 > Windows获取文件状态
Windows获取文件状态
在操作一个文件前想要获取当前文件的状态,避免正在打开的文件又再次的打开,代码参考网络以前已经写好,分享于己作为记录,也可作为他人的参考。
#region Get file status [DllImport("kernel32.dll")] private static extern IntPtr _lopen(string lpPathName,int iReadWrite); [DllImport("kernel32.dll")] private static extern bool CloseHandle(IntPtr hObject); private const int OF_READWRITE=2; private const int OF_SHARE_DENY_NONE=0x40; private static readonly IntPtr HFILE_ERROR=new IntPtr(-1); private static int getFileStatus(string fileFullName) { if(!File.Exists(fileFullName)) { return -1;//file not exists } IntPtr handle=_lopen(fileFullName,OF_READWRITE|OF_SHARE_DENY_NONE); if(handle==HFILE_ERROR) { return 1;//aready open } CloseHandle(handle); return 0;//not open } #endregion
需要引用命名空间:
using System.Runtime.InteropServices;
Windows获取文件状态
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。