使用ASP.NET实现视频文件的上传

时间:2022-09-29 01:14:43

使用ASP.NET实现视频文件的上传

摘 要:本项目主要使用FLASH+方式,实现视频文件的上传。其中使用FLASH收集用户信息,反馈上传过程和结果,使用程序处理上传的数据,并保存到服务器的磁盘上。其中使用FLASH插件的好处是用户响应快,处理过程和结果直观,界面友好。使用处理上传数据的好处是能够方便灵活的文件进行管理。

关键词:;视频文件

上传视频文件和上传普通文件,主要有两种实现方式,第一,使用组件上传,第二,使用FLASH插件上传。不管使用哪一种上传机制,都离不开如下过程:

①收集用户选择信息;

②提交数据到数据处理程序;

③数据处理程序上传文件;

④显示上传结果。

本项目主要使用FLASH+方式,实现视频文件的上传。其中使用FLASH收集用户信息,反馈上传过程和结果,使用程序处理上传的数据,并保存到服务器的磁盘上。其中使用FLASH插件的好处是用户响应快,处理过程和结果直观,界面友好。使用处理上传数据的好处是能够方便灵活的文件进行管理。

下面,分析这两部分的功能和使用方法。

一、FLASH插件

本项目使用的FLASH插件是Uploadify,它包括jquery.uploadify.min.js(jquery的文件,用JS脚本控制上传文件的过程)、uploadify.css(控制页面布局的文件)和uploadify.swf(FLASH动画文件,引入外部JS脚本,实现与FLASH文件的交互,形成不同的动画效果)三个文件。

Uploadify是一个jQuery插件,你可以很容易的为网站添加多个文件上传功能。两个不同的版本(HTML5和Flash)允许灵活选择,为您的网站正确实现完美升级。

1.它包括如下功能

①多文件上传,它允许多个文件上传,并且不用点击浏览按钮或提交按钮,多形式避免用户的麻烦。

②拖放文件,文件上传的HTML5版本,允许你拖放文件到队列来添加文件。

③实时进展条提示,当文件被上传时,进度条显示当前的上传进度。

④自定义上传限制,设置文件大小、计数、类型、上传限制,以确保您的服务器的承受能力。

⑤极限定制,Uploadify的几乎每一个方面都是完全可定制的。

2.具体使用方法在

使用时,使用jquery语句调用,具体格式及参数如下:

jQuery("#file_upload1").uploadify({

'debug': false,

'auto': false,

'buttonText': '选择资源',

'swf': "js/uploadify/uploadify.swf",

'queueID': 'uploadfileQueue1',

'uploader': 'UploadHandlero.ashx',

'cancelImg': '/images/icon/2.png',

'width': '75','height': '24',

'multi': true,

'fileTypeDesc': '支持格式:',

'fileTypeExts': '*.doc;*.ppt;*.rar;*.zip;*.docx;*.pptx',

'fileSizeLimit': '0',

'removeTimeout': 1,

'queueSizeLimit': 5, 'formData': { 'path': 'unitppt/' + unitid },

'onFallback': function() {

alert("您未安装FLASH控件,无法上传图片!");},

'onUploadSuccess': function(file, data, response) {

getFileList(unitid); }});

二、数据处理程序

当涉及到实际保存上传的文件到服务器时,服务器端的上传脚本是在后端完成的。这里是一个基本的信息,它可以帮助你掌握创建自定义服务器端上传脚本,完成你需要的功能。

文件选择完毕,要传给数据处理程序,实现文件数据的真正上传,其实这个程序可以用很多种实现方式,本项目使用进行数据的处理。

下面给出程序的源代码

public class UploadHandler : IHttpHandler, IRequiresSessionState

{ public void ProcessRequest(HttpContext context) {context.Response.ContentType = "text/plain";

context.Response.Charset = "utf-8";

HttpPostedFile file = context.Request.Files["Filedata"];

string uploadPath = context.Server.MapPath("\\"+context.Request.Form["path"].ToString()+"\\");

if(file != null)

{ if(!Directory.Exists(uploadPath))

{ Directory.CreateDirectory(uploadPath); }

if(file.FileName != null)

{ String filename = file.FileName.ToString();

file.SaveAs(uploadPath + filename); }

}}}

参考文献:

[1]启明工作室编著网络应用系统开发与实例.人民邮电出版社,2005.7

[2]明日科技编著. 从入门到精通.清华大学版社,2012.9

[3]赛奎春编著. 项目开发全程实录.清华大学版社,2013.10

作者简介:

张萍,女(1983~)汉族,黑龙江省牡丹江人,讲师,硕士,主要从事计算机教育工作。

项目名称:高职院校精品资源共享课的平台建设研究 编号:14G270。

上一篇:谈新农村建设中如何做好农机安全监理工作 下一篇:优秀传统文化在高校思想政治教育中的价值及实...