#region 上传文件的类型枚举,方法名:FileType
protected enum FileType
{
jpg, gif, bmp, png, swf, txt, doc, xsl, ppt
}
#endregion
#region 取得文件扩展名,方法名:GetFileExtends(string FileName)
/// <summary>
/// 取得文件扩展名
/// </summary>
/// <param name="FileName">文件名(包括扩展名,但不包括路径)</param>
/// <returns></returns>
protected static string GetFileExtends(string FileName)
{
string Extends = null;
if (FileName.IndexOf('.') > 0)
{
string[] FileNames = FileName.Split('.');
Extends = FileNames[FileNames.Length - 1].ToString();
}
return Extends;
}
#endregion
#region 检查上传文件的合法性,方法名:CheckFileExtends()
/// <summary>
/// 检查上传文件的合法性
/// </summary>
/// <param name="FileExtends">要检查的文件扩展名</param>
/// <returns></returns>
protected static bool CheckFileExtends(string FileExtends)
{
bool status = false;
FileExtends = FileExtends.ToLower();
string[] FileExtendses = Enum.GetNames(typeof(FileType));
for (int i = 0; i < FileExtendses.Length; i++)
{
if (FileExtendses[i].ToLower() == FileExtends)
{
status = true;
break;
}
}
return status;
}
#endregion
#region 上传附件,方法名:PictureUpload(string asPicturePath, FileUpload asFileUpload, string asFileExtends)
/// <summary>
/// 上传附件
/// </summary>
/// <param name="asPicturePath">需要上传到的服务器路径</param>
/// <param name="asFileUpload">上传控件</param>
/// <param name="asFileExtends">附件的扩展名</param>
/// <returns></returns>
protected int PictureUpload(string asPicturePath, FileUpload asFileUpload, string asFileExtends)
{
int fhz = 0;
if (CheckFileExtends(asFileExtends))
{
try
{
asFileUpload.SaveAs(asPicturePath);
fhz = 1;
}
catch
{
fhz = 0;
}
}
else
{
return fhz = 0;
}
return fhz;
}
#endregion
#region 返回文件全名,方法名:dGetFileName(FileUpload asFileUpload)
public string dGetFileName(FileUpload asFileUpload)
{
string FilePath = asFileUpload.PostedFile.FileName.ToString();
string FileExtends = null;
string BigPictureName = null;
if (FilePath != "")
{
FileInfo myFileInfo = new FileInfo(FilePath);
string PictureName = myFileInfo.Name.ToString();
if (PictureName != null)
{
FileExtends = GetFileExtends(PictureName);
BigPictureName = System.DateTime.Now.DayOfYear.ToString() + asFileUpload.PostedFile.ContentLength.ToString() + "." + FileExtends.ToString();
}
else
{
BigPictureName = "";
}
}
return BigPictureName;
}
#endregion
#region 保存上传文件,方法名:dUploadSave(string asFilePath, FileUpload asFileUpload)
/// <summary>
/// 保存上传文件
/// </summary>
/// <param name="asFilePath">需要上传到的服务器路径</param>
/// <param name="asFileUpload">上传控件</param>
/// <returns></returns>
public int dUploadSave(string asFilePath, FileUpload asFileUpload)
{
//int Fhz;
//string FilePath = asFileUpload.PostedFile.FileName.ToString();
//FileInfo myFileInfo = new FileInfo(FilePath);
//string PictureName = myFileInfo.Name.ToString();
//string FileExtends = null;
//if (PictureName != null)
//{
// FileExtends = GetFileExtends(PictureName);
// string BigPictureName = System.DateTime.Now.DayOfYear.ToString() + asFileUpload.PostedFile.ContentLength.ToString() + "." + FileExtends.ToString();
// string SmallPictureName = "S_" + BigPictureName.ToString();
// string BigPicturePath = asFilePath + BigPictureName.ToString();
// string SmallPicturePath = asFilePath + SmallPictureName.ToString();
// Fhz = PictureUpload(BigPicturePath, asFileUpload, FileExtends);
//}
//else
//{
// Fhz = 0;
//}
//return Fhz;
int Fhz = 0;
string StringAnswer = dGetFileName(asFileUpload);
if (StringAnswer != null)
{
string BigPictureName = StringAnswer.Substring(0, StringAnswer.LastIndexOf(".")).ToString();
string FileExtends = StringAnswer.Substring(StringAnswer.LastIndexOf(".") + 1).ToString();
if (StringAnswer != "")
{
string BigPicturePath = asFilePath + StringAnswer.ToString();
Fhz = PictureUpload(BigPicturePath, asFileUpload, FileExtends);
}
}
return Fhz;
}
#endregion
--摘自互联网经修改