Linux下java 调用vba_windows中excel vba获取目录下的所有文件

用惯了linux,很不习惯使用windows下的软件思维处理问题。今天遇到了这个一个简单的问题,一个目录里有一部分采集的无用图片,想遍历出来,通过sql语句查看这些图片属于那一篇文章。本来在linux下可以通过ls -1(不是L,是"一 " )获取所有文件的列表。

一、ls -1查看文件列表

[root@91it pic]# ls -1

20141114_01003389.gif

20141114_01012846.jpg

20141114_01014141.png

20141114_01014350.jpg

20141114_01023534.png

20141114_01023535.png

20141114_01023547.jpg

20141114_01023587.jpg

20141114_01023612.png

20141114_01023613.png

二、dir /b 法

由于手头暂时没有linux,又赖得再开虚拟机。所以就想到了win下的dos命令将所有的文件列表输出到文件,再通过excel 公式生成sql 语句。具体可以通过如下命令:

C:UsersAdministrator>dir c:pic /b

20141114_01003389.gif

20141114_01012846.jpg

20141114_01014141.png

20141114_01014350.jpg

20141114_01023534.png

20141114_01023535.png

20141114_01023547.jpg

20141114_01023587.jpg

20141114_01023612.png

20141114_01023613.png

20141114_01023627.png

还支持使用 "dir c:pic /b c:one.xls"支持生成到excel文件中。

三、excel vba生成

本来这两种方法都算是比较完美简单了,不过之前了解过excel 的vba功能很强,也试了下,方法为

打开excel,使用快捷键alt + F11 打开excel vba界面,在相应的sheet工作薄界面使用如下代码:

Sub Iterate_Files()

Dim ctr As Integer

ctr = 1

Path = "C:pic " ' Path should always contain a '' at end

File = Dir(Path) ' Retrieving the first entry.

Do Until File = "" ' Start the loop

ActiveSheet.Cells(ctr, 1).Value = File

ctr = ctr + 1

File = Dir() ' Getting next entry.

Loop

End Sub

然后运行F5 运行,运行完再按ALT+F11返回excel界面,发现所有的文件已经显示到本地列表中。如果想带上文件的路径,可以将第七行更换为:

ActiveSheet.Cells(ctr, 1).Value = Path & File

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值