我正在发出FTP请求,并且只要参数remoteFilePath
包含带有“%20”的字符串,我就会收到无法找到该文件的错误。我怎么能绕过这个?
Dim remoteFileWriteTime As Date = Ftp.GetDateTimeStamp(remoteFilePath).ToLocalTime()
注意:我不负责命名文件,因为它不是我的服务器。
答案 0 :(得分:0)
尝试使用以下方法对文件名进行编码:
Dim baseUri as String = "ftp://SomeFtpServer/"
Dim file as String = "Strangely%20Named%20File.pdf"
Dim myUri as String = baseUri & HttpUtility.UrlEncode(file)
Dim remoteFileWriteTime As Date = Ftp.GetDateTimeStamp(myUri).ToLocalTime()
如果HttpUtility未正确编码,您可能需要使用Uri.EscapeDataString
进行编码。我不确定FTP究竟想要哪种编码方案。