插件地址:http://blog.csdn.net/never_say_goodbye/article/details/8598521

先上个效果图:

相比来说,效果还是很不错的

使用MVC3做服务器端的处理时遇到的一大问题是HttpPostedFileBase为null,request.file也为null,这是上面的博客中没有提到的(PHP),一番潜心研究中,发现了Request.InputStream中有数据,于是乎:

[HttpPost]
public JsonResult FileUpload()
{
Stream RequestStream =HttpContext.Request.InputStream;//把文件的数据读取到st流中
if (RequestStream == null)
{
return Json(new { msg=,msgbox="上传的文件为空"});//"上传的文件为空";
} string file_name = HttpContext.Request.Headers["X_FILENAME"].ToString();
if(string.IsNullOrWhiteSpace(file_name))
{
return Json(new { msg = , msgbox = "文件名为空" });//"文件名为空";
}
int last_Index = file_name.LastIndexOf(".");
string fileExt = file_name.Substring(last_Index+,file_name.Length -last_Index -); //得到文件的拓展名,不包含“.”
string saveFloder = Server.MapPath("/uploads/"); //保存的文件路径
if (!Directory.Exists(saveFloder)) //如果该文件夹不存在, 则创建
{
Directory.CreateDirectory(saveFloder);
}
string save_name = Guid.NewGuid().ToString()+"."+fileExt; //保存的文件名
////创建一个文件流来把上传的文件写入到服务器上
FileStream fs = new FileStream(saveFloder + save_name, FileMode.Create, FileAccess.Write, FileShare.Read);
byte[] buffer = new byte[];//缓冲区
int readLen;//每次真正读取到的字节数
while ((readLen = RequestStream.Read(buffer, , )) > )
{
//读到数据了(此时独到的数据在buffer缓冲区中)
//开始把文件写入到服务器的磁盘中
fs.Write(buffer, , readLen);
} fs.Flush();//请空缓冲区,使得所有缓冲区的数据都写入到文件中
RequestStream.Flush();
fs.Close();//关闭流,释放资源
RequestStream.Close();
return Json(new { msg = , msgbox = "/uploads/" + save_name });
}

目前没有测试过大文件上传的情况及其性能

jquery.html5uploader.js 上传控件的更多相关文章

  1. js上传控件 plupload 使用记录

    最近一个项目需要使用一个上传控件进行多图片上传,给用户更好的体验,找到了plupload,用了一下感觉还是不错的, 1.从官网上  可以获得例子 ,我集成到了jsp,如下: <%@ page l ...

  2. jquery文件批量上传控件Uploadify3.2(java springMVC)

    人比較懒  有用为主 不怎么排版了 先放上Uploadify的官网链接:http://www.uploadify.com/  -->里面能够看到PHP的演示样例,属性说明,以及控件下载地址.分f ...

  3. 纯js上传控件——fineuploader

    fineuploader是一款基于ajax实现文件上传的插件,具有以下有点: A:支持文件上传进度显示. B:文件拖拽浏览器上传方式 C:Ajax页面无刷新. D:多文件上传. F:跨浏览器. E:跨 ...

  4. jquery文件上传控件 Uploadify

    (转自 http://www.cnblogs.com/mofish/archive/2012/11/30/2796698.html) 基于jquery的文件上传控件,支持ajax无刷新上传,多个文件同 ...

  5. jquery文件上传控件 Uploadify 可以和ajax交互

    http://www.cnblogs.com/mofish/archive/2012/11/30/2796698.html  原网址 基于jquery的文件上传控件,支持ajax无刷新上传,多个文件同 ...

  6. jquery文件上传控件 Uploadify(转)

    原文:http://www.cnblogs.com/mofish/archive/2012/11/30/2796698.html 基于jquery的文件上传控件,支持ajax无刷新上传,多个文件同时上 ...

  7. jquery本地上传预览扩展(隐藏上传控件单击图片上传支持ie!!)

    我用到的原材料地址:http://www.cnblogs.com/leejersey/p/3660202.html 修改后: /// <reference path="../../Js ...

  8. 用jQuery File Upload做的上传控件demo,支持同页面多个上传按钮

    需求 有这么一个需求,一个form有多个文件要上传,但又不是传统的图片批量上传那种,是类似下图这种需求,一开始是用的swfupload做的上传,但是问题是如果有多个按钮的话,就要写很多重复的代码,于为 ...

  9. jquery文件上传控件 Uploadify 问题记录

    Uploadify v3.2.1 首先引用下面的文件 <!--上传控件 uploadify--> <script type="text/javascript" s ...

随机推荐

  1. python3 pillow使用测试

    # -*- encoding=utf-8 -*- ''''' pil处理图片,验证,处理 大小,格式 过滤 压缩,截图,转换 图片库最好用Pillow 还有一个测试图片img.jpg, 一个log图片 ...

  2. 第6条:在单次切片操作内,不要同时指定start、end和stride

    核心知识点: 1.使用负步进可以反转取值字符串及ASCII. 2.stride最好不要与start和end用在一起,会降低代码可读性. 除了基本的切片操作之外,python还提供了somelist[s ...

  3. c++学习笔记(网上资料)

                                    C++笔记       2007-3-22 1. 程序 —— 可执行文件,人发送给计算机的一组指令.         硬件指令是二进制, ...

  4. var妙用

    var广泛使用其实也有用的.比如在一些不太确定类型的地方 (比如要区分int/uint/long/double的时候),用泛型太牛刀而不用又觉得不灵活的时候,其实是比较推荐var的比如设计某种类的时候 ...

  5. 【Flask】Sqlalchemy 常用数据类型

    ### SQLAlchemy常用数据类型:1. Integer:整形,映射到数据库中是int类型.2. Float:浮点类型,映射到数据库中是float类型.他占据的32位.3. Double:双精度 ...

  6. 狄利克雷卷积&莫比乌斯反演

    昨天刚说完不搞数论了,刚看到一个\(gcd\)的题目dalao用这个做了,虽然比正解麻烦,还是打算学一学了 数论函数: 数论函数的定义: 数论函数亦称算术函数,一类重要的函数,指定义在正整数集上的实值 ...

  7. Mac OS下新建文本文档

    ---恢复内容开始--- 介绍 不知道小伙伴们有没有发现这样一件事情:Mac下没有新建文本文档!如果你恰好经常需要新建类似于.cpp,.in,.out等文件的话,每次终端用一堆$ cd命令再加上一句$ ...

  8. 算法(Algorithms)第4版 练习 2.1.1

    E A S Y Q U E S T I O N A E S Y Q U E S T I O N A E S Y Q U E S T I O N A E E Y Q U S S T I O N A E ...

  9. 利用simhash计算文本相似度

    摘自:http://www.programcreek.com/java-api-examples/index.php?source_dir=textmining-master/src/com/gta/ ...

  10. 自定义EL函数、自定义JSTL标签

    自定义EL函数 1.做一个类(静态) package com.maya.el; public class ELBiaoDaoShi { public static String TiHuan(Stri ...