第一次是博客,还有丢丢小兴奋呢。作为一个资深菜鸟,为了给自己留下点什么,开始记录一些技术问题。当然也是学习过程。

     下面是成品的在.net web下的应用,还有很多不足的地方,期待大家的点评。

$(document).ready(function()
        {
           $("#uploadify").uploadify({
                'buttonText':'选择文件',
                'swf': '../scripts/jquery.uploadify-v3.2/uploadify.swf?ver=<%=DateTime.Now.Ticks %>',
                'uploader': 'UploadHandler.aspx',//上传后对文件的处理页
                'auto': false,//是否自动上传
                'multi': true,//是否可以上传多个文件
                'fileSizeLimit' : 204800,
                'method' : "POST",
                'formData' : {'fileID' : <%="'"+Request["file_id"] + "'"%>},
                'onSelect': function(fileObj)
                {
                    if(fileObj.name.indexOf('%') < 0)
                    {//这是我自己应用的一个方法,在数据库里判断是否有重复文件。
                        ajaxSendPost('IsFileExist.aspx',<%= "'file_id=" + Request["file_id"] + "'"%> + '&file_name=' + fileObj.name + '&file_size='+fileObj.size,IsFileExist);
                    }
                    else
                    {
                        $('#uploadify').uploadify('cancel', '*');
                        alert("文件名中含有非法字符(%)");
                    }
                },
                'onUploadSuccess':function(file,data,response){//处理上传成功后的事件
                    
                },
               
                'onCancel':function(){//取消上传或者点击右上角X的方法
                   
                }
               
            });
           
            function IsFileExist(){
                if(ajaxHttpRequest.readyState==4&&ajaxHttpRequest.status==200){
                    if(ajaxHttpRequest.responseText == "2")
                    {
                        alert("文件已经存在,按上传将覆盖已有文件!");
                    }
                    else if (ajaxHttpRequest.responseText == "1")
                    {
                        $('#uploadify').uploadify('cancel', '*');
                        alert("文件已经存在!");
                    }
                }
            }
        });

  cs文件处理:(UploadHandler.aspx.cs)

  protected void Page_Load(object sender, EventArgs e)     {

  HttpPostedFile PostedFile = Request.Files["Filedata"];

     string VirtualDIR = ConfigurationManager.AppSettings["VirtualDIR"];

   string uploadPath = HttpContext.Current.Server.MapPath(VirtualDIR);

    string AttchementuploadPath = HttpContext.Current.Server.MapPath(VirtualDIR + "/Attchements/");

    string MemouploadPath = HttpContext.Current.Server.MapPath(VirtualDIR + "/Memos/");

     string EvaluationUploadPath = HttpContext.Current.Server.MapPath(VirtualDIR + "/Evaluations/");

  DateTime TimeStamp = DateTime.Now;

   if (PostedFile != null)

     {

         if (!string.IsNullOrEmpty(Request["fileID"]))

         {

           int file_id = int.Parse(Request["fileID"]);

           string FullFileName = uploadPath + "\\" + PostedFile.FileName;

        if (!Directory.Exists(uploadPath))

           {

             Directory.CreateDirectory(uploadPath);

           }

          PostedFile.SaveAs(FullFileName);

//下面这句代码缺少的话,上传成功后上传队列的显示不会自动消失

       //context.Session[context.Session["userName"].ToString()] = filename;

//context.Response.Write(filename);

   string content = SaveFileContent.GetFileContent(FullFileName);

}

       else

        {

                     Response.Write("0");

          }

}

  }

  else

     {

       Response.Write("0");

     }

}

  

顺便把保存文件内容的方法写在这个了(只适合.txt和word文件啦)

public class SaveFileContent     {

   public SaveFileContent()

     {             //             // TODO: 在此处添加构造函数逻辑             //

    }

public static string GetFileContent(object file_path)

{             string outText = string.Empty;

Word._Application oWord = new Word.Application();

    Word._Document oDoc;

object oMissing = System.Reflection.Missing.Value;

    object format = WdSaveFormat.wdFormatDocument;

    object VisiableWindows = false;

object Readonly = true;

try             {

oWord.Visible = true;

object fileName = file_path;

oDoc = oWord.Documents.Open(ref fileName, ref format, ref Readonly, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref VisiableWindows, ref oMissing, ref oMissing, ref oMissing, ref oMissing);

//oDoc = oWord.Documents.Open(ref fileName, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);

outText = oDoc.Content.Text;

oDoc.Close(ref oMissing, ref oMissing, ref oMissing);

oDoc = oWord.Documents.Add(ref fileName, ref oMissing, ref oMissing, ref VisiableWindows);

//oDoc = oWord.Documents.Add(ref fileName, ref oMissing, ref oMissing, ref oMissing);

return outText.ToString();

}

catch (Exception ex)

{

Console.Write(ex.Message);

}

finally

{

oWord.Quit(ref oMissing, ref oMissing, ref oMissing);

}

return "";

}

}

就不展示结果啦~~

把3.2的具体参数放在这了,以便查找!!

http://blog.sina.com.cn/s/blog_5079086b0101fkmh.html

  

uploadify控件使用在.net的更多相关文章

  1. Uploadify 控件上传图片 + 预览

    jquery的Uploadify控件上传图片和预览使用介绍. 在简单的servlet系统中和在SSH框架中,后台处理不同的,在三大框架中图片预览时费了不少力气,所以下面将两种情况都介绍一下. 1,前台 ...

  2. ThinkPHP 3.2.3集成uploadify上传控件

    uploadify控件有一个坑爹的问题,就是文件上传时会session丢失,官方解释http://www.uploadify.com/documentation/uploadify/using-ses ...

  3. jquery文件上传控件 Uploadify

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

  4. 使用Uploadify(UploadiFive)多文件上传控件遇到的坑

    最近项目中需要实现多文件上传功能,于是结合需求最终选择了Uploadify这一款控件来实现.相比其他控件,Uploadify具有简洁的界面,功能API基本可以解决大多数需求,又是基于jquery的,配 ...

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

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

  6. jquery上传文件控件Uploadify

    基于jquery的文件上传控件,支持ajax无刷新上传,多个文件同时上传,上传进行进度显示,删除已上传文件. 要求使用jquery1.4或以上版本,flash player 9.0.24以上. 有两个 ...

  7. uploadify上传控件使用

    uploadify是JQuery的一个上传插件,实现的效果非常不错,并且带进度显示,我将给大家演示如何使用uploadify进行图片上传, 1.点我下载http://www.uploadify.com ...

  8. 文件上传~Uploadify上传控件~续(多文件上传)

    对于Uploadify文件上传之前已经讲过一次(文件上传~Uploadify上传控件),只不过没有涉及到多文件的上传,这回主要说一下多个文件的上传,首先,我们要清楚一个概念,多文件上传前端Upload ...

  9. uploadify上传控件中文的乱码解决办法

    uploadify上传控件中文的乱码解决办法 网站用的gb2312的编码,用uploadify上传控件上传中文时在IE能部分成功,FF,Chrome则完全失败,查找了一天原因,结果发现是页面编码问题, ...

随机推荐

  1. vmware tools 安装

    转到虚拟机 > 安装 VMware Tools(或 VM > 安装 VMware Tools).注意:如果您运行的是轻量版的 Fusion.不带 VMware Tools 的 Workst ...

  2. 使用 Camtasia Recorder显示 “ camtasia an error occurred in the recorder: video codec open failed ”

    这是因为本机没有codec的缘故,可以下载一个:tscc解码器(TechSmith Screen Capture Codec) 2.0.3.0 安装版 http://www.cngr.cn/dir/2 ...

  3. 图文讲解基于centos虚拟机的Hadoop集群安装,并且使用Mahout实现贝叶斯分类实例 (7)

    接下来,我们开启hadoop集群. 如果之前打开过Hadoop,可能会发生lock的问题,解决方案:http://blog.csdn.net/caoshichaocaoshichao/article/ ...

  4. .net web api 一

    web api可以提供方便简单可靠的web服务,可以大量的用于不需要提供复杂的soap协议的环境,以简单明了的形式返回数据,在不太复杂的环境中web api可以做为wcf等重级web服务的一种可替代方 ...

  5. Android studio教程:[4]真机测试

    有了Android studio这么好用的软件,自然要有一部不错的安卓手机,然后在真机上测试自己的程序,那样才能更好的发现程序中存在的问题,毕竟模拟器不是真正的手机嘛. 工具/原料 Android s ...

  6. poj-2403-cup

    题目描述 The WHU ACM Team has a big cup, with which every member drinks water. Now, we know the volume o ...

  7. hadoop源码编译

    为何要自行编译hadoop源码,往往是由于官方提供的hadoop发行版都是基于32位操作系统,在操作hadoop时会发生warn.   准备软件: 1)JDK 2)Hadoop源码 3)Maven 4 ...

  8. C语言--流程控制

    一.流程控制 1.顺序结构 *默认的流程结构,按照书写顺序执行每一条语句 2.选择结构 *对给定的条件进行判断,再根据判断结果来决定执行那一段代码 3.循环结构 *在给定条件成立的情况下,反复执行某一 ...

  9. UVa230 Borrowers (STL)

     Borrowers  I mean your borrowers of books - those mutilators of collections, spoilers of the symmet ...

  10. C# 迪杰斯特拉(Dijkstra)算法

    Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的最短路径.主要特点是以起始点为中心向外层层扩展,直到扩展到终点为止. 其基本思想是,设置顶点集合S并不断地作 ...