带有通配符的 FTP 目录部分列表

FTP directory partial listing with wildcards(带有通配符的 FTP 目录部分列表)
本文介绍了带有通配符的 FTP 目录部分列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

首先我问:ftp 目录列表超时.大量的子目录.我得到了答案.

First I asked that: ftp directory listing timeout. Huge number of subdirs. I got the answer.

仍然因为我的目录中可以有数十万个 FTP 对象,所以扫描它可能需要很长时间.但是我认为有可能检索以A"开头然后是B"等等的所有对象......当它检索目录时,它可以开始在另一个线程上处理它们而无需等到它获得整个列表.

Still because I can have hundred thousands of FTP objects in the directory it could take really long time to scan that. However I thought it might be possible to retrieve all the objects that begin with 'A' and then 'B' and so on... As it retrieves directories it could start processing them on the other thread without waiting till it gets the entire list.

是否可以使用标准 FtpWebRequest 使用通配符来列出 FTP 目录?

Is it possible to do FTP directory listing with wildcards using standard FtpWebRequest?

推荐答案

FTP 规范 (RFC 3659) 明确禁止它.来自该规范的 第 2.2.2 节,标题为通配符"(强调我的):

The most recent update to the FTP specification (RFC 3659) explicitly forbids it. From section 2.2.2 of that specification, titled "Wildcarding" (emphasis mine):

对于本规范中定义的命令,所有路径名都是从字面上看.也就是说,对于作为参数给出的路径名一个命令,其名称与给定路径名相同的文件是默示.路径名中的任何字符都不能被视为特殊字符或魔术",因此没有模式匹配(除了完全相等)在给定的路径名​​和 NVFS 中存在的文件之间允许服务器-FTP.

For the commands defined in this specification, all pathnames are to be treated literally. That is, for a pathname given as a parameter to a command, the file whose name is identical to the pathname given is implied. No characters from the pathname may be treated as special or "magic", thus no pattern matching (other than for exact equality) between the pathname given and the files present in the NVFS of the server-FTP is permitted.

需要某种形式的模式的客户匹配功能必须获得相关的列表目录,或目录,并实现自己的文件名选择程序.

也就是说,如果您的服务器支持它,您仍然可以使用 FtpWebRequest 类,但您必须自己处理响应以处理项目列表,因为 .NET 类无法理解您的服务器特定扩展.

That said, if your server supports it, you could still use the FtpWebRequest class, but you'd have to process the response yourself to handle the list of items, as the .NET classes won't understand your server-specific extensions.

这篇关于带有通配符的 FTP 目录部分列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

DispatcherQueue null when trying to update Ui property in ViewModel(尝试更新ViewModel中的Ui属性时DispatcherQueue为空)
Drawing over all windows on multiple monitors(在多个监视器上绘制所有窗口)
Programmatically show the desktop(以编程方式显示桌面)
c# Generic Setlt;Tgt; implementation to access objects by type(按类型访问对象的C#泛型集实现)
InvalidOperationException When using Context Injection in ASP.Net Core(在ASP.NET核心中使用上下文注入时发生InvalidOperationException)
LINQ many-to-many relationship, how to write a correct WHERE clause?(LINQ多对多关系,如何写一个正确的WHERE子句?)