我目前收到以下错误:

远程服务器返回错误:(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期望数据通过的方式 .

as400和java的区别_文件传输协议和AS400相关推荐

  1. java 实现文件秒传_文件传输和秒传

    InetAddress类: InetAddress类是IP地址的封装类,就是把设定的某个ip封装成InetAddress对象,然后使用这个对象能够进行相关的操作.例如获取域名或主机名.上网ip等等.这 ...

  2. java用NIO实现文件传输_Java Nio 实现文件的传输

    使用Java Nio实现文件的传输 1.ServerSocket.java package ch2; import java.io.File; import java.io.FileNotFoundE ...

  3. java io flush_《文件传输基础——Java IO流》,对其中flush方法的思考

    在学习了<文件传输基础--Java IO流> 课程后,发现自己对flush()方法的调用有很多疑惑.在查询资料和自己看源码以及动手试验之后发现有以下几个特点.如有误也请大家指正出来,一切为 ...

  4. winscp是什么软件_文件传输软件WinSCP的使用

    WinSCP软件是windows下的一款使用ssh协议的开源图形化SFTP客户端,也就是一个文件传输的软件,它有什么优点吗?咱们嵌入式开发中经常会将windows中的文件复制到linux系统当中,比较 ...

  5. java 协程线程的区别_线程和协程的区别的通俗说明

    表面上看协程和线程似乎是同一个东西,能达到的效果也相同,但是在底层的实现上却有着非常大的区别,在服务器端的绝大部分应用中,协程要比线程节省资源的多. 通俗易懂的讲,线程是操作系统的资源,当java程序 ...

  6. c和java的区别_论C语言和Java的区别

    原标题: 论C语言和Java的区别 在计算机的发展史上,出现过几百种编程语言,经过多年的发展,留下来的编程语言里面,历史最悠久的是最基础的C 语言,最流行的是Java,发展势头最好的是Python·· ...

  7. jt808终端鉴权_驾培协议和jt808协议的区别 | 车载GPS和视频平台产品经理

    交通部颁发的<机动车驾驶员计时培训系统平台技术规范>中的驾培TCP协议和jt808协议虽然很像,但有本质的不同,很多人以为就是部标808协议,这个认识是错误的,驾培协议是驾培协议,jt80 ...

  8. java写入txt数据丢失_文件传输中的数据丢失 – JAVA?

    我有一个FileServer和一个FileClient,服务器在客户端连接时发送文件.这是一个简单的程序,只是为了理解背后的概念. 我能够将文件从Server发送到Client,缓冲区为1024. 问 ...

  9. python web和java web区别_成都汇智动力-谈谈个人认为的JavaWeb开发与PythonWeb开发的区别...

    原标题:成都汇智动力-谈谈个人认为的JavaWeb开发与PythonWeb开发的区别 今天这篇文章谈一谈Java Web开发和Python Web开发的区别.在这里我并不是鼓励大家从Java Web转 ...

最新文章

  1. Gridview][UpdateCommand的写法要点]
  2. listview条目用状态选择器没反应
  3. ElementUI的组件拆解之Tooltip
  4. Val编程-读取汉字
  5. windows 10 家庭版 无法打开 gpedit.msc 解决方法
  6. vue实例以及生命周期
  7. linux下pcre编译,linux下交叉编译lighttpd以及pcre
  8. python制作窗口界面_python GUI库图形界面开发之PyQt5窗口背景与不规则窗口实例
  9. DemocracyOS促进双方的公民参与
  10. linux下安装asio4ks,FL Studio 第一步 初始化 2020-10-01
  11. 【数据分析】数据分析方法(一):5W2H 分析方法
  12. 阿里巴巴著名的“管理三板斧”
  13. mysql中长整型是longint_整型int和长整型long
  14. 卖服务器销售打广告语句子,卖灯销售广告语
  15. STM32/CPU总线的由来和地址映射概念
  16. java native函数库_Java 层调用 Native 层函数的两种方式
  17. 内存调试神器- ASan详解及实例分析
  18. 最新MSNMessenger机器人列表(转)
  19. C#访问局域网内共享文件夹
  20. 古细菌多样性分析16S rRNA

热门文章

  1. 小程序开发(7)-之获取手机号、用户信息
  2. 使用Git推送代码到GitHub远程仓库
  3. C语言 assert 函数 - C语言零基础入门教程
  4. oracle11区分大小写,修改Oracle11g用户密码不区分大小写
  5. Python学习笔记(1):用户输入,终端输入
  6. Android 数据库 哪个好,目前最好用的安卓数据库,DBFlow使用详解
  7. Android公共jar,使用JitPack管理Android项目中公共模块库
  8. java 多态与重载的区别_java实现多态 方法的重写和重载的区别
  9. html中basefont标签,HTML的basefont标签
  10. smith标准型_线性系统理论(八)多项式矩阵Smith-McMillan标准型计算方法