C#从FTP AS400下载文件

时间:2015-11-17 12:24:34

标签: c# batch-file ftp ibm-midrange

我们目前有一个* .BAT文件,其中包含一些FTP命令,用于从AS400下载文件并保存到TEXT文件中。 BAT工作正常,文本文件将下载文件中的记录显示在另一个下面。

现在,我们想要删除这个* .BAT文件并使用C#为我们下载文件并保存到文本文件中。现在的问题是我们得到的文件包含一行字符串中的所有记录!它们不再列在彼此之下。

这是我们正在使用的代码:

<Directory /var/www/dir1>
   AllowOverride None
   <Limit GET POST OPTIONS>
   Order deny,allow
   Deny from all
   </Limit>
</Directory>

知道我们为什么会这样做吗?为什么简单的DOS FTP命令比我们的代码更好?

非常感谢! :)

2 个答案:

答案 0 :(得分:2)

ASCII模式将在下载物理文件时添加记录分隔符。它是大多数ftp客户端的默认传输模式。

request.UseBinary = false;
  

指定false会导致FtpWebRequest发送&#34;类型A&#34;命令到服务器。

Data Transfer Methods

Transferring QSYS.LIB files

答案 1 :(得分:0)

问题可能很简单:您立刻阅读整个文档。你需要单独阅读每一行:

using(StreamReader sr = new StreamReader(fs))
{
     while(!sr.EndOfStream)
     {
         Console.WriteLine(sr.ReadLine());
     }
}