.net上传,一个选择直接上传(ashx)和byteArray上传

<%@ WebHandler Language="C#" Class="UploadImage" %>
using System;
using System.Web;
public class UploadImage : IHttpHandler
{
    //文件上传目录
    private string uploadFolder = "UploadImage";
    public void ProcessRequest(HttpContext context)
    {
        context.Response.ContentType = "text/plain";
        HttpFileCollection files = context.Request.Files;
        if (files.Count > 0)
        {
            string path = context.Server.MapPath(uploadFolder);
            HttpPostedFile file = files[0];
            if (file != null && file.ContentLength > 0)
            {
                string fileName = DateTime.Now.ToString("yyyyMMddhhmmss") + context.Request.Form["fileName"];
                string savePath = path + "/" + fileName;
                file.SaveAs(savePath);
                System.Web.HttpResponse obj = context.Response;
                obj.Write(fileName);
            }
        }
        else
        {
            context.Response.Write("参数错误");
            context.Response.End();
        }
    }

    public bool IsReusable {
        get {
            return false;
        }
    }
}
<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="gb2312" Debug="true"%>
<%@ Import Namespace="System.IO" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>上传</title>
</head>
<body>

<script language="c#" runat="server">
public void Page_Load(Object sender,EventArgs e)
{
  if (true)
        {
            string saveToFolder = "file";
            string Path = Server.MapPath(saveToFolder);

            //通过Resquest.InputStream解收的是Stream形式,转换成byte[]形式
            Stream s = Request.InputStream;
            byte[] bt = StreamToBytes(s);

            //将byte[]形式转换成MemoryStream形式,再保存为图片
            System.IO.MemoryStream ms = new System.IO.MemoryStream(bt);
            System.Drawing.Bitmap b = new System.Drawing.Bitmap(ms);
            b.Save(Path + "/proj.jpg");
            Response.Write(true);
            Response.End();

        }

}
    //此函数将Stream转换成byte[]
    public byte[] StreamToBytes(Stream stream)
    {
        byte[] bytes = new byte[stream.Length];
        stream.Read(bytes, 0, bytes.Length);
        // 设置当前流的位置为流的开始
        stream.Seek(0, SeekOrigin.Begin);
        return bytes;
    }
</script>
</body>
</html>
时间: 2024-10-11 05:56:19

.net上传,一个选择直接上传(ashx)和byteArray上传的相关文章

我需要在Web上完成一个图片上传的功能

我需要在Web上完成一个图片上传的功能. 这个页面需要能从手机中选择图片上传. 首先,这个页面是从微信上面触发的,所以修改了微信的的入口地址,增加了身份识别号作为传参. 跳转到页面的时候,页面先检查身份识别号是否已参与过本次活动,参与过本次活动的,可以跳转到变更图片功能.如果未参与过图片上传,则需要传入图片. 看上去是很简单的逻辑. 马上行动.

java的JFileChooser上传一个Excel文件并读取该文件的内容

一.描述 无论是jsp中还是swing中的上传文件组件都可能上传一个Excel文件并且按行读取文件的记录,读取记录后可以提供数据的显示功能,也可以构造sql语句进行数据库中数据的查询等. 例如我们上传一份用户名单,其中包括用户姓名,性别和身份证号,我们将用户真实姓名加上身份证后四位作为用户账号查询数据库中是否有该用户信息,上传的表格如下: 二.所需工具 java要调用Excel并且读取Excel文件中的数据,就必须使用jxl.jar札包,所以先获取该札包然后引入到java项目中. 该札包的免费下

一个简单的jQuery插件ajaxfileupload实现ajax上传文件例子

页面代码:   <html>     <!-- 引入相关的js文件,相对路径  -->     <script type="text/javascript" src="js/jquery.js"></script>       <script type="text/javascript" src="js/ajaxfileupload.js"></script&g

ASP.NET上传一个文件夹

之前仿造uploadify写了一个HTML5版的文件上传插件,没看过的朋友可以点此先看一下~得到了不少朋友的好评,我自己也用在了项目中,不论是用户头像上传,还是各种媒体文件的上传,以及各种个性的业务需求,都能得到满足.小小开心了一把. 但无论插件再怎么灵活,也难以应付所有的需求,比如,你要上传一个2G的文件.以现在我们的网速,恐怕再快也得传半小时.要命的是,如果你在上传到90%的时候不小心关掉了浏览器,或者是手一抖摁了F5,完了,一切还得从头再来.这种用户体验简直太糟糕了.所以,断点续传就十分有

SpringMvc+jQuery 文件拖拽上传、选择上传

最近做了个简易的文件上传功能,jsp版本的,后续会完善更多的功能,不过现在已经能用了,需要的小伙伴,直接引用下面的文件内容直接copy到自己的项目中就ok了,效果如图: fileupload.css: .fileupload_box { position:relative; width: 100%; height: 100%; border: 3px dashed #E5E5E5; text-align: center; z-index: 2000; cursor: pointer; margi

向github上传一个项目

1.在Github上新建一个项目 然后在你需要提交的目录下 echo "# demo" >> README.md //新建README.md,然后把你要写的简要和注释写到里面git init 初始化现存的版本库git add README.md git commit -m "first commit" git remote add origin https://github.com/zlmhs/-.git 添加远程仓库路径git push -u orig

ajax+jquery+ashx如何实现上传文件

第一:建立Default.aspx页面 <html> <head runat="server"> <title>ajax图片上传</title> <script src="js/jquery-1.3.2.min.js" type="text/javascript"></script> <script src="js/jquery.form.js" t

springMVC+spring+hibernate注解上传文件到数据库,下载,多文件上传

数据库 CREATE TABLE `annex` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `realName` varchar(36) DEFAULT NULL, `fileContent` mediumblob, `handId` bigint(20) DEFAULT NULL, `customerId` bigint(20) DEFAULT NULL, PRIMARY KEY (`id`), KEY `fk_id` (`handId`), CON

MVC文件上传-使用jQuery.FileUpload和Backload组件实现文件上传

本篇使用客户端jQuery-File-Upload插件和服务端Badkload组件实现多文件异步上传.MVC文件上传相关兄弟篇: 处理文件上传的服务端组件Backload 用于处理文件上传的服务端组件.Backload与客户端文件上传插件(比如jQuery-File-Upload)配合使用,初步形成一个处理文件异步上传的解决方案. □ Badkload的一些功能和特点 ● 零配置:Backload提供默认BackloadDemoController用来处理上传文件请求.如果其它控制器也想拥有"B