gpt4 book ai didi

.net - 使用 FTPWebRequest 列出文件时出现问题

转载 作者:太空宇宙 更新时间:2023-11-04 04:28:24 26 4
gpt4 key购买 nike

我在使用 .NET FTPWebRequest 类将文件上传到 vsftpd 服务器时遇到了一些问题。

首先,有没有办法使用 ListDirectoryDe​​tails 请求列出隐藏文件?现在我没有收到任何以“.”开头的文件/目录。

其次,当我请求名称以“-”开头的目录列表时,它会返回父目录的列表。例如,如果我请求“/-DIR”列表,我会得到“/”列表。

我相信,如果发送“LIST -a ./ ”命令而不仅仅是“LIST”,这些问题就可以解决,但尝试添加到 FTPWebRequest 的 .Method 属性中的命令会导致异常(根据文档)。

有什么办法可以解决这个问题吗?谢谢。

最佳答案

我为我编写的应用程序编写了一个 FTPToolkit,它列出了所有文件和目录。这是一个例子:

Public Function ListDirectoryDetail(ByVal directory As String) As FTPdirectory
Dim ftp As System.Net.FtpWebRequest = GetRequest(GetDirectory(directory))
'Set request to do simple list
ftp.Method = System.Net.WebRequestMethods.Ftp.ListDirectoryDetails

Dim str As String = GetStringResponse(ftp)
'replace CRLF to CR, remove last instance
str = str.Replace(vbCr & vbLf, vbCr).TrimEnd(ControlChars.Cr)
'split the string into a list
Return New FTPdirectory(str, _lastDirectory)
End Function

Private Function GetStringResponse(ByVal ftp As FtpWebRequest) As String
'Get the result, streaming to a string
Dim result As String = ""
Using response As FtpWebResponse = DirectCast(ftp.GetResponse(), FtpWebResponse)
Dim size As Long = response.ContentLength
Using datastream As Stream = response.GetResponseStream()
Using sr As New StreamReader(datastream)
result = sr.ReadToEnd()
sr.Close()
End Using

datastream.Close()
End Using

response.Close()
End Using

Return result
End Function

如果您想获取该工具包的副本,请告诉我。

关于.net - 使用 FTPWebRequest 列出文件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6428667/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com