【问题标题】:C# FTP Download - JSON FileC# FTP 下载 - JSON 文件
【发布时间】:2014-01-02 21:00:38
【问题描述】:

在我的代码中,我想将特定的 JSON 文件上传和下载到 FTP 服务器。

序列化效果很好,上传效果也很好。当我通过 - 例如 - FileZilla 查找文件时,文件的内容是正确的。 (在服务器上)

但是当我使用我的应用程序(以及我的代码 - 不是使用 FileZilla)下载此文件时,我没有收到任何异常,但该文件几乎是空的。这是唯一的内容:

{}

这是我的下载代码:

        string ResponseDescription = "";
        FtpWebRequest req = (FtpWebRequest)FtpWebRequest.Create("ftp://" + "ftp.strato.com" + "/" + verzeichnis + "/" + file.Name);
        req.Method = WebRequestMethods.Ftp.DownloadFile;
        req.Credentials = new NetworkCredential(this.benutzer, this.passwort);
        req.UseBinary = true;
        req.UsePassive = false;
        req.Proxy = null;
        try
        {
            FtpWebResponse response = (FtpWebResponse)req.GetResponse();
            Stream stream = response.GetResponseStream();
            byte[] buffer = new byte[2048];
            FileStream fs = new FileStream(destinationFolder + @"/" + destinationFile.Name, FileMode.Create);
            int ReadCount = stream.Read(buffer, 0, buffer.Length);
            while (ReadCount > 0)
            {
                fs.Write(buffer, 0, ReadCount);
                ReadCount = stream.Read(buffer, 0, buffer.Length);
            }
            ResponseDescription = response.StatusDescription;
            fs.Close();
            stream.Close();

            return true;
        }
        catch (Exception e)
        {
            MessageBox.Show(e.Message); // TODO - better Errorhandling
            return false;
        }

【问题讨论】:

  • 您是否使用调试器单步执行它以查看发生了什么?另外,您将req.UseBinary 设置为true,但该文件是文本文件,我不知道这是否有问题。
  • 嗨,是的,我逐步完成了代码。我看不出有问题。是的……这是一次尝试。当然这不是一个二进制文件,属性应该是“false”。它不适用于“真”和“假”。这只是一个“尝试”。 :)
  • @MaxLebold a) 您的代码似乎是正确的 b) 您获得的文件 ({}) 看起来不像是部分下载的文件,而是一个有效的空 json。您的错误应该在其他地方。
  • 但它是什么或在哪里?当上传到服务器很好时,服务器上的文件是正确的,只有在用我的代码下载文件后,文件是空的。
  • 请将您的答案作为答案发布在下方,然后将其标记为已接受。您不应该在问题中编辑答案。

标签: c# json ftp


【解决方案1】:

我找到了解决方案。这是我的错误。问题不在于下载 - 代码是正确的(如你所说)。

下载文件后,JSON 反序列化运行,这就是原因。我的反序列化逻辑有一个小错误。

【讨论】:

    猜你喜欢
    • 2015-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-05
    • 1970-01-01
    • 2010-10-29
    相关资源
    最近更新 更多