【问题标题】:FTP UPLOAD to AS/400 from VB.NET从 VB.NET FTP 上传到 AS/400
【发布时间】:2010-11-23 18:48:19
【问题描述】:

我正在尝试使用 VB.NET 对 AS/400 IBM 大型机执行 FTP Put 功能。我可以上传文件,但是,我需要能够从大型机捕获每个输出响应以用于记录目的。简而言之,如果我要手动执行 FTP,请捕获 cmd 屏幕上打印的内容。任何建议将不胜感激。

【问题讨论】:

  • 您使用哪个 API/库来发出 FTP 会话?

标签: vb.net upload ftp ibm-midrange


【解决方案1】:

根据您使用的库,您应该能够为您提交的每个命令从 FTP 服务器获取某种响应对象或字符串。然后,您可以解析这些响应并将它们转储到您选择的文件/目标/源中。

编辑:由于您使用的是 FTPWebRequest/Response 库,因此您需要让 FTPWebRequest 对象将其结果转储到 FTPWebResponse 对象中,然后使用如下代码读取整个流:

Dim request As FtpWebRequest = DirectCast(WebRequest.Create(serverUri), FtpWebRequest)
request.Method = WebRequestMethods.Ftp.ListDirectory

Dim response As FtpWebResponse = DirectCast(request.GetResponse(), FtpWebResponse)

Dim responseStream As Stream = Nothing
Dim readStream As StreamReader = Nothing

Try
    responseStream = response.GetResponseStream()
    readStream = New StreamReader(responseStream, System.Text.Encoding.UTF8)

    If readStream IsNot Nothing Then
        Console.WriteLine(readStream.ReadToEnd())
    End If

    Console.WriteLine("List status: " & response.StatusDescription)

Finally

    If readStream IsNot Nothing Then
        readStream.Close()
    End If

    If response IsNot Nothing Then
       response.Close()
    End If
End Try

    Return True
End Function

您应该能够根据自己的情况定制此代码,以便检索您需要的响应详细信息。

【讨论】:

猜你喜欢
  • 2013-04-05
  • 1970-01-01
  • 2014-08-26
  • 1970-01-01
  • 2012-02-07
  • 2012-08-25
  • 1970-01-01
  • 2011-07-11
  • 1970-01-01
相关资源
最近更新 更多