You are on page 1of 3

using System;

using System.IO;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

using System.Drawing.Imaging;
using System.Drawing;

using neko.iis.mar04pro;
using System.Timers;

namespace upload
{
public partial class CustomerHandler : System.Web.UI.Page
{
private static Boolean flag;
private static Boolean result;

private int step = 0;


private string ofilename;

private System.Timers.Timer timer;

protected void Page_Load(object sender, EventArgs e)


{
HttpFileCollection files = Request.Files;
if (files.Count == 0)
{
Response.Write("����ֱ�ӷ��ʱ��ļ�");
Response.End();
}
HttpPostedFile RequestFile = files[0];

string ifullfilename = RequestFile.FileName;


string tempname = "";

string filetype =
ifullfilename.Substring(ifullfilename.LastIndexOf(".") + 1);
if(RequestFile !=null&&RequestFile.ContentLength>0)
{
switch (filetype)
{
//filetype below we conver into swf
case "doc":
case "docx":
case "ppt":
case "pptx":
case "xls":
case "xlsx":
case "mdb":
case "rtf":
case "pdf":
tempname = Server.MapPath("files/") + Request.Form["fileName"]
+ "." + filetype;
//ofilename = Request.Form["fileName"] + ".swf";

RequestFile.SaveAs(tempname);
//flashpaper.conver(tempname, Server.MapPath("files/") +
ofilename);

break;
case "txt":
tempname = Server.MapPath("files/") + Request.Form["fileName"]
+ "." + "rtf";
//ofilename = Request.Form["fileName"] + ".swf";

RequestFile.SaveAs(tempname);
//flashpaper.conver(tempname, Server.MapPath("files/") +
ofilename);

break;
case "bmp":

tempname = Server.MapPath("files/") + Request.Form["fileName"]


+ "." + filetype;

RequestFile.SaveAs(tempname);

//FileStream fs = new FileStream(Server.MapPath("temp/" +


Request.Form["fileName"] + "." + filetype), FileMode.Open);

//Bitmap bmp=new Bitmap(fs);

//ofilename = Request.Form["fileName"] + ".jpg";

//bmp.Save(Server.MapPath("files/" + ofilename),
ImageFormat.Jpeg);
//fs.Dispose();
// bmp.Dispose();
break;

default:
ofilename = Request.Form["fileName"] +"."+ filetype;
RequestFile.SaveAs(Server.MapPath("files/") + ofilename);

break;
}
}

timer = new System.Timers.Timer();


timer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
timer.Interval = 1000;
timer.Enabled = true;

while (!flag)
{
}
timer.Stop();
timer.Close();
GC.Collect();
File.Delete(tempname);

Response.Write("result=" + ofilename + "&");


}

// Specify what you want to happen when the Elapsed event is raised.
private void OnTimedEvent(object source, ElapsedEventArgs e)
{
result = File.Exists(Server.MapPath("files/") + ofilename);
if (result)
{
flag = true;
}
else
{
if (step > 120)
{
flag = true;
}
else
{

}
}

step++;
}
}
}

You might also like