📄 fileupload.cs
字号:
using System;
using System.IO;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient ;
using System.Data.Common ;
using com.unicafe.common ;
using com.unicafe.security ;
using com.unicafe.ui;
namespace com.ascs.plp.common
{
public class FileTool
{
/// <summary>
/// 构造函数
/// </summary>
public FileTool()
{
}
/// <summary>
/// 上传文件的方法
/// 参数:上传文件空间的名字,webconfig中的上传文件路径的key,要上传的文件的路径和文件名,上传的类型(1为不该文件名,2,该文件名)
/// 返回:字符串。如果为空,上传失败
/// </summary>
/// <param name="filename"></param>
/// <returns></returns>
public static string UploadFile(System.Web.UI.HtmlControls.HtmlInputFile FileControl ,string FileKey,string FileName,string Type)
{
try
{
if (FileName=="" || FileName==null)
{
LogService.Write ("参数不能为空。");
return "";
}
else
{
string UploadPath="";
string SaveFileName="";
UploadPath=System.Configuration.ConfigurationSettings.AppSettings[FileKey].ToString();//取当前上传文件夹路径
SaveFileName=GetFileNameFromPath(FileName,Type); //调用方法,取得文件名
if (SaveFileName!="")
{
FileControl.PostedFile.SaveAs(UploadPath+SaveFileName); //保存
return "../Upload/"+SaveFileName;
}
else
{
return "";
}
}
}
catch( Exception e)
{
LogService.Write (e.Message );
return "" ;
}
}
/// <summary>
/// 由路径文件名取得文件名的方法
/// 参数:带有路径的文件名,上传的类型(1为不该文件名,2,该文件名)
/// 返回:字符串。(文件名)。如果失败,返回空
/// </summary>
/// <param name="PathFileName"></param>
/// <returns></returns>
public static string GetFileNameFromPath(string PathFileName,string Type)
{
try
{
string FileName = "";
FileName=PathFileName.Substring(PathFileName.LastIndexOf("\\")+1,PathFileName.Length - PathFileName.LastIndexOf("\\")-1);//根据路径和文件名取文件名
if (Type=="1") //不修改文件名
{
return FileName;
}
else if (Type=="2") //调用ChangeName方法修改文件名,并返回修改后的文件名
{
return ChangeName(FileName);
}
return "";
}
catch( Exception e)
{
LogService.Write ("根据路径名取得文件名时出错!");
LogService.Write (e.Message );
return "";
}
}
/// <summary>
/// 使用时间修改文件名的方法。
/// 参数:要修改的文件名
/// 返回:根据当前时间修改后的文件名
/// </summary>
/// <param name="FileName"></param>
/// <returns></returns>
public static string ChangeName(string FileName)
{
try
{
string ReName= DateTime.Now.Year.ToString().Trim() +DateTime.Now.Month.ToString().Trim() +DateTime.Now.Day.ToString().Trim()
+DateTime.Now.Hour.ToString().Trim() + DateTime.Now.Minute.ToString().Trim() + DateTime.Now.Second.ToString().Trim()
+ DateTime.Now.Millisecond.ToString().Trim(); //文件名取当前的年月日小时分秒毫秒
//string ExName=FileName.Substring(FileName.Length -3,3); //取文件扩展名
Random rnd = new Random ();
ReName=ReName + ( rnd.Next(10)).ToString();
string ExName=FileName.Substring(FileName.LastIndexOf (".")+1); //取文件扩展名
return ReName +"."+ ExName;
// LogService.Write (ReName);
// LogService.Write (ExName);
}
catch(Exception e)
{
LogService.Write ("在修改文件名时出错!");
LogService.Write (e.Message);
return "";
}
}
/// <summary>
/// 使用删除文件的方法。
/// 参数:文件的路径,文件名
/// 返回:删除是否成功
/// </summary>
/// <param name="FileName"></param>
/// <returns></returns>
public static bool FileDelete(string FileKey,string FileName)
{
try
{
if (FileName=="" || FileName==null)
{
LogService.Write ("参数不能为空。");
return false;
}
else
{
string UploadPath="";
UploadPath=System.Configuration.ConfigurationSettings.AppSettings[FileKey].ToString();//取当前上传文件夹路径
FileName=FileName.Substring(10);
if (FileName!="")
{
File.Delete(UploadPath+FileName);
//FileControl.PostedFile.SaveAs(UploadPath+SaveFileName); //保存
return true;
}
else
{
return false;
}
}
}
catch( Exception e)
{
LogService.Write (e.Message );
return false ;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -