【问题标题】:Nancy httpfile issue南希 httpfile 问题
【发布时间】:2014-06-26 01:45:45
【问题描述】:

我在解析请求文件时遇到问题。 我的文件大小是 1338521 字节,但南希说,文件大小有时是 1751049 或 3200349。 在我的windows pc上它工作正常,在linux服务器上出现这个问题,所以我无法保存文件。

string result = Convert.ToBase64String(Core.ReadBytesFromStream(file.Value));
using (MemoryStream ms = new MemoryStream(Convert.FromBase64String(result)))
{
    using (Bitmap bm2 = new Bitmap(ms))
    {
        bm2.Save(path);
    }
}

有什么想法吗?

【问题讨论】:

    标签: c# linux mono filestream nancy


    【解决方案1】:

    你不需要像那样转换文件。

    var filename = Path.Combine(storagePath, Request.Files[0].Name);
    
    using (var fileStream = new FileStream(filename, FileMode.Create))
    {
         Request.Files[0].Value.CopyTo(fileStream);
    }
    

    在文件进入时验证文件以确保扩展被接受,创建保存路径,并将流复制到文件系统上的新文件。

    就是这样。

    【讨论】:

    • 我也试过这个。在 Windows 上它工作正常,在 linux 上,超过 500kb 的图像会损坏,我不知道如何解释,但这是保存的图像:i.stack.imgur.com/ORKn1.jpg,这是原始图像:i.stack.imgur.com/mTsE2.jpg 文件大小:718kb。你知道怎么解决吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-09-17
    • 2014-08-06
    • 2011-11-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多