as400和java的区别_文件传输协议和AS400

我目前收到以下错误:

远程服务器返回错误:(501)参数或参数中的语法错误 .

我已经检查了服务器并且文件确实存在,如果我打开命令提示符并键入以下代码它可以工作:

ftp

open 192.168.1.2

cd /Images

get S12345.jpeg

这是正常的,但是一旦我尝试通过此代码连接:

private bool DownloadPod(string server)

{

string[] allocate = server.Split('\\');

string ftp = @"ftp://192.168.1.2/Images/" + allocate.Last();

Uri uri = new Uri(ftp);

// The code path for uri: ftp://192.168.1.2/Images/S12345.jpeg

var request = WebRequest.Create(uri) as FtpWebRequest;

if(request != null)

{

request.Method = WebRequestMethods.Ftp.DownloadFile;

// Left credentials off for security.

request.Credentials = new NetworkCredential(@"", @"");

// The line that triggers the error (response)

using(FtpWebResponse response = request.GetResponse() as FtpWebResponse)

using(Stream stream = response.GetResponseStream())

using(StreamReader reader = new StreamReader(stream))

{

reader.ReadToEnd();

return true;

}

}

return false;

}

有人可以向我解释为什么这不起作用?

凭据在命令提示符下工作

在服务器上物理文件

可以从命令提示符下载

根据MSDN:

要获取FtpWebRequest的实例,请使用Create方法 . 您还可以使用WebClient类从FTP服务器上载和下载信息 . 使用这些方法中的任何一种,当您指定使用FTP方案的网络资源(例如,“ftp://contoso.com”)时,FtpWebRequest类提供以编程方式与FTP服务器交互的功能 . URI可以是相对的或绝对的 . 如果URI的格式为“ftp://contoso.com/%2fpath”(%2f是转义'/'),那么URI是绝对的,当前目录是/ path . 但是,如果URI的格式为“ftp://contoso.com/path”,则首先.NET Framework登录到FTP服务器(使用Credentials属性设置的用户名和密码),然后是当前目录设置为/ path .

这就是AS400期望数据通过的方式 .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值