C#如何实现FTP在服务器上遍历文件夹

C#如何实现FTP在服务器上遍历文件夹,第1张

.../Image这个主文件是一定的,然后搂住是想在这个文件夹下创建文件夹

事先,你已经知道你所要创建的文件夹的名称,可以这么做

if (!(Directory.Exists(path+文件名))//用这个方法判断是否有这个文件夹。比你去遍历文件夹要效率的多

Directory.CreateDirectory(path+文件名)//不存在则创建

例如:在C:\TDDOWNLOAD目录下有a.txt、b.txt两个文件,另有\sub1子文件夹,C:\TDDOWNLOAD\sub1下又有c.txt、d.txt两个文件。

1. os.walk

os.walk()返回一个三元素的tuple:当前路径、子文件夹名称、文件列表。

>>>import os

>>>def fun( path ):

... for root, dirs, files in os.walk( path ):

... for fn in files:

... print root, fn

...

>>>fun( r'C:\TDDOWNLOAD' )

C:\TDDOWNLOAD a.txt

C:\TDDOWNLOAD b.txt

C:\TDDOWNLOAD\sub1 c.txt

C:\TDDOWNLOAD\sub1 d.txt

>>>

2. glob.glob

glob.glob()只接受一个参数,这个参数既代有路径,又代有匹配模式,返回值为一个列表。注意,glob.glob()无法直接穿透子文件夹,需要自己处理:

>>>def fun( path ):

... for fn in glob.glob( path + os.sep + '*' ): # '*'代表匹配所有文件

... if os.path.isdir( fn ): # 如果结果为文件夹

... fun( fn ) # 递归

... else:

... print fn

...

>>>fun( r'C:\TDDOWNLOAD' )

C:\TDDOWNLOAD\a.txt

C:\TDDOWNLOAD\b.txt

C:\TDDOWNLOAD\sub1\c.txt

C:\TDDOWNLOAD\sub1\d.txt

>>>

'*'为匹配模式,代表匹配所有文件,只有这样才能将子文件夹查出来,以便递归深入,探查下一层的文件。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/790135.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-25
下一篇2023-08-25

发表评论

登录后才能评论

评论列表(0条)

    保存