当前位置: 首页 > news >正文

网站备案 阿里云/网络舆情监测系统软件

网站备案 阿里云,网络舆情监测系统软件,那些网站可以做推广,网站建设和源代码问题在c#下遍历目录,应用最多的应该就是 System.IO.DirectoryInfo.GetDirectories或GetFiles了,但是当目录特别大,文件特别多时,效率不尽人意,此时我们很容易想到三个Win32API函数 FindFirstFile,FindNextFile和…

在c#下遍历目录,应用最多的应该就是 System.IO.DirectoryInfo.GetDirectories或GetFiles了,但是当目录特别大,文件特别多时,效率不尽人意,此时我们很容易想到三个Win32API函数 FindFirstFile,FindNextFile和FindClose。这三个API搭配使用就能遍历文件和子目录了,而且可以遍历的时候随时中止,避免无谓的操作。在网上搜了一下,发现这方面的文章转载最多的应该就是http://www.cnblogs.com/xdesigner/archive/2006/12/08/586177.html  这篇了,但是按照文中描述的方法,并不能遍历子目录,没办法,就自己想办法,重新写了一个。 

以下为源代码: 

#region 声明WIN32API函数以及结构 **************************************[Serializable,System.Runtime.InteropServices.StructLayout(System.Runtime.InteropServices.LayoutKind.Sequential,CharSet = System.Runtime.InteropServices.CharSet.Auto),System.Runtime.InteropServices.BestFitMapping(false)]private struct WIN32_FIND_DATA{public int dwFileAttributes;public int ftCreationTime_dwLowDateTime;public int ftCreationTime_dwHighDateTime;public int ftLastAccessTime_dwLowDateTime;public int ftLastAccessTime_dwHighDateTime;public int ftLastWriteTime_dwLowDateTime;public int ftLastWriteTime_dwHighDateTime;public int nFileSizeHigh;public int nFileSizeLow;public int dwReserved0;public int dwReserved1;[System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValTStr,SizeConst = 260)]public string cFileName;[System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValTStr,SizeConst = 14)]public string cAlternateFileName;}[System.Runtime.InteropServices.DllImport("kernel32.dll",CharSet = System.Runtime.InteropServices.CharSet.Auto,SetLastError = true)]private static extern IntPtr FindFirstFile(string pFileName, ref WIN32_FIND_DATA pFindFileData);[System.Runtime.InteropServices.DllImport("kernel32.dll",CharSet = System.Runtime.InteropServices.CharSet.Auto,SetLastError = true)]private static extern bool FindNextFile(IntPtr hndFindFile, ref WIN32_FIND_DATA lpFindFileData);[System.Runtime.InteropServices.DllImport("kernel32.dll", SetLastError = true)]private static extern bool FindClose(IntPtr hndFindFile);   #endregion//具体方法函数Stack<string> m_scopes = new Stack<string>();private static readonly IntPtr INVALID_HANDLE_VALUE = new IntPtr(-1);WIN32_FIND_DATA FindFileData;private System.IntPtr hFind = INVALID_HANDLE_VALUE;void FindFileInDir(string rootDir){string path = rootDir;start:new FileIOPermission(FileIOPermissionAccess.PathDiscovery, Path.Combine(path, ".")).Demand();if (path[path.Length - 1] != '\\'){path = path + "\\";}Response.Write("文件夹为:"+path+"<br>");hFind = FindFirstFile(Path.Combine(path,"*"), ref FindFileData);if(hFind!=INVALID_HANDLE_VALUE){do{if (FindFileData.cFileName.Equals(@".") || FindFileData.cFileName.Equals(@".."))continue;if ((FindFileData.dwFileAttributes & 0x10) != 0){m_scopes.Push(Path.Combine(path, FindFileData.cFileName));}else{Response.Write(FindFileData.cFileName+"<br>");}}while (FindNextFile(hFind, ref FindFileData));            }FindClose(hFind);if (m_scopes.Count > 0){path = m_scopes.Pop();goto start;}}//调用方法如下: FindFileInDir(@"D:");

 

http://www.lbrq.cn/news/1068247.html

相关文章:

  • 贵州省建设厅建筑质监站网站/如何查询域名注册人信息
  • 四方坪网站建设/影响seo排名的因素有哪些
  • 怎么做网站logo/百度云资源搜索网站
  • tp 网站建设源码/做销售记住这十句口诀
  • 做网站做app什么专业/教育培训机构网站
  • 网站建设教程ppt/免费制作自己的网站
  • 网站上做旅游卖家要学什么/磁力猫引擎入口
  • 钰鸣厦门网站建设/百度信息
  • 做抛物线的网站/热门职业培训班
  • 青海城乡住房建设厅网站/seo的中文意思
  • 站长之家alexa排名/品牌推广的方式
  • wordpress obj cache/上海百度seo公司
  • 给一个网站/汽车品牌推广策划方案
  • 古典风格网站模板/怀来网站seo
  • 网站做图尺寸/百度网盘搜索引擎入口哪里
  • 云南省人防工程建设网站/手机网站建设价格
  • 深圳网站建设信科便宜/知乎关键词排名工具
  • 怎么用手机开发app/上海外贸网站seo
  • 注册一个做网站的公司好/好的seo平台
  • 安徽网站建设服务平台/代推广app下载
  • 网站建设优化服务精英/郑州疫情最新动态
  • 简述网站的建设流程图/市场营销咨询
  • 局网站建设工作/百度竞价sem
  • 网站相册源码/广告策划方案范文
  • 家在深圳业主论坛/福州百度快速优化
  • 做yield网站多少钱/重庆二级站seo整站优化排名
  • 创同盟做网站/国产搜什么关键词最好看
  • 做网站发布网/seo培训公司
  • 武汉自媒体公司/seo站群优化技术
  • 装饰公司起名字寓意好的字/高级seo课程
  • Web 开发 12
  • 2025年测绘程序设计比赛--基于统计滤波的点云去噪(已获国特)
  • C的数据类型与变量
  • 业务系统跳转Nacos免登录方案实践
  • 【AI学习】RadioDiff:代码学习
  • i Battery Box V3.7 客户端电池检测仪