c# - 南希 httpfile 问题

标签 c# linux mono filestream nancy

我在解析请求文件时遇到问题。 我的文件大小是 1338521 字节,但 Nancy 说,文件大小有时是 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);
    }
}

有什么想法吗?

最佳答案

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

var filename = Path.Combine(storagePath, Request.Files[0].Name);

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

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

就是这样。

关于c# - 南希 httpfile 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24406750/

相关文章:

C#:减少健全性检查中的线路噪音

linux - 我可以配置 tinyproxy 来限制出站主机吗?

java - 在 java|groovy 中将字符串放入列表的正确方法

c# - 单线程

mono - 使用嵌入式 Mono 调试如何在 C# 代码中设置断点?

.net - 编译时引用.NET dll(单声道)

c# - 你如何将 IEnumerable<int> 转换为 Int32

c# - 重定向到错误页面并显示用户友好错误

c# - 根据某种标准从集合中选择最大的项目

linux - 为什么 JVM 报告的已提交内存比 linux 进程驻留集大小更多?