0

ファイルのダウンロードに使用FtpWebRequestしていますが、ダウンロードするとすべてのテキスト ファイル\r\nが削除されます。

私は何を間違っていますか?

Uri u = new Uri(msg);
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(u);

request.Method = WebRequestMethods.Ftp.DownloadFile;
request.Credentials = credential;
request.UsePassive = true;
request.UseBinary = true;
request.KeepAlive = false;

//Get a reponse
WebResponse response = request.GetResponse();
Stream responseStream = response.GetResponseStream();

FileStream localfileStream = new FileStream(destination,
    FileMode.Create, FileAccess.Write);
//create the file
byte[] buffer = new byte[1024];
int bytesRead = responseStream.Read(buffer, 0, 1024);

while (bytesRead != 0)
{
    localfileStream.Write(buffer, 0, bytesRead);
    bytesRead = responseStream.Read(buffer, 0, 1024);
}

localfileStream.Close();
response.Close();
responseStream.Close();. 
4

2 に答える 2

0

あなたのコードは正しいです。問題を引き起こしていることをあなたが言っていない他の何かがあります。私の推測では

  • a) サーバー上のファイルに\r\n
  • b)クライアントにそれらがないことを確認する方法が間違っています。間違ったファイルをチェックしているか、追加の変換などを行っています。
于 2013-02-05T19:26:30.610 に答える
0

これと同様の問題がありました。私が使用したコードは、あなたのものとほとんど同じです。私のコードは実際には正しく機能していましたが、サーバー上のファイルには「CR/LF」コンボではなく、行末に「LF」文字しか含まれていませんでした。ほとんどのテキスト エディタはこれを無視し、テキストを連続した 1 行として表示します。

于 2013-05-06T09:07:15.920 に答える