麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

IDL使用file_search函数遍历某个文件夹下的所有文件

写IDL程序的时候经常遇到需要读取某个目录下的所有文件,如果文件过多,挨个写会很麻烦,这时候可以使用file_search函数来遍历整个文件夹。

示例:

filearr = file_search('d:\file\','*.gz',count=num);

说明:

filearr是一个数组,里面存放着 d:\file\ 目录中所有的后缀名为.gz的文件的详细路径。

详细的方法可以使用IDL自带的help,下面是详细的使用示例:

  • 搜索当前目录下的所有文件
IDL>;获得当前工作目录
IDL> cd,current = workDir
IDL>;输出查看工作目录
IDL> print,workDir
C:\Users\Administrator
IDL>;搜索工作目录下的所有文件,统计结果到变量num中
IDL> r = file_search(count = num)
IDL>;查看统计个数
IDL> print,num
30
IDL>;各文件名称以字符串方式存储在返回值r中
IDL> help,r
R STRING = Array[30]
  • 搜索文件夹“c:\temp”下的所有文件和文件夹;
IDL> r = file_search('c:\temp','*',count = num)
IDL>;查看统计个数
IDL> print,num
8
IDL>;输出完整路径名
IDL> print,r
C:\temp\a.txt C:\temp\aaa.pro C:\temp\aba.pro C:\temp\文件夹1 C:\temp\文件夹1\c.pro C:\temp\文件夹1\d.pro
C:\temp\文件夹1\文件夹2 C:\temp\文件夹1\文件夹2\e.pro
  • 搜索文件夹“c:\temp”下的所有文件,不包含文件夹;
IDL> r = file_search('c:\temp','*',count = num,/test_regular)
IDL>;查看统计个数
IDL> print,num
6
IDL>;输出完整路径名
IDL> print,r
C:\temp\aaa.pro C:\temp\aba.pro C:\temp\可执行.exe C:\temp\文件夹1\c.pro C:\temp\文件夹1\d.pro C:\temp\文件夹1\文件夹2\e.pro
  • 搜索文件夹“c:\temp”下的所有文件夹,不包含文件;
IDL> r = file_search('c:\temp','*',count = num,/test_directory)
IDL>;查看统计个数
IDL> print,num
2
IDL> print,r
C:\temp\文件夹1 C:\temp\文件夹1\文件夹2
  • 搜索文件夹“c:\temp”中的所有文件,不搜索子目录;
IDL> r = file_search('*',count = num,/test_regular)
IDL>;查看统计个数
IDL> print,num
3
IDL> print,r
aaa.pro aba.pro 可执行.exe
  • 搜索文件夹“c:\temp”中的所有可执行文件(Windows下文件后缀为exe);
IDL> r = file_search('*',count = num,/test_executable,/test_regular)
IDL>;查看统计个数
IDL> print,num
1
IDL> print,r
可执行.exe
  • 搜索文件夹“c:\temp”中的扩展名为“.pro”的文件;
IDL> r = file_search('*.pro',count = num,/test_regular)
IDL>;查看统计个数
IDL> print,num
2
IDL> print,r
aaa.pro aba.pro
  • 搜索文件夹“c:\temp”中的名称中含有“b”的所有文件;
IDL> r = file_search('*b*',count = num,/test_regular)
IDL>;查看统计个数
IDL> print,num
1
IDL> print,r
aba.pro

参考:http://blog.sciencenet.cn/blog-344887-630319.html

麻辣GIS-Sailor
作者:
GIS爱好者,学GIS,更爱玩GIS。
微博关注
手机阅读
赞赏支持
手机阅读
微信捐助麻辣GIS
微信打赏
支付宝捐助麻辣GIS
支付宝打赏

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

3.如果本文对您有所帮助,请您对我们团队进行 打赏捐助让我们在传播3S的路上可以走得更远,不胜感激。PS:如果你是学生党,请优先把经费用于购买学习资料 以及 与小哥哥/小姐姐约会上:-)

如您有疑问,可在文末留言,或到麻辣GIS QQ群中提问。

QQ群(一):291616564 加入QQ群

QQ群(二):166408035 加入QQ群

QQ群(三):627853279 加入QQ群

QQ群(四):436386604 加入QQ群

QQ群(五):606176554 加入QQ群

QQ群(六):946178380 加入QQ群

QQ群(七):861271808 加入QQ群

新疆互助群:910717627 加入QQ群

微信公众号:malagis,扫描右边二维码直接关注。

发表评论