通过HtmlInputFile控件上传文件的类

系统 1462 0
using System;
using System.Web.UI.HtmlControls;
using System.IO;

namespace Document.Bll
{
public class HtmlInputFileControl
{
HtmlInputFileControl #region HtmlInputFileControl
public HtmlInputFileControl()
{
}

#endregion


IsAllowedExtension是否允许该扩展名上传 #region IsAllowedExtension是否允许该扩展名上传
public static bool IsAllowedExtension(HtmlInputFilehifile)
{
string strOldFilePath = "" ,strExtension = "" ;

// 允许上传的扩展名,可以改成从配置文件中读出
string []arrExtension = { " .gif " , " .jpg " , " .jpeg " , " .bmp " , " .png " } ;

if (hifile.PostedFile.FileName != string .Empty)
{
strOldFilePath
= hifile.PostedFile.FileName;
// 取得上传文件的扩展名
strExtension = strOldFilePath.Substring(strOldFilePath.LastIndexOf( " . " ));
// 判断该扩展名是否合法
for ( int i = 0 ;i < arrExtension.Length;i ++ )
{
if (strExtension.Equals(arrExtension[i]))
{
return true ;
}

}

}

return false ;
}

#endregion


IsAllowedLength判断上传文件大小是否超过最大值 #region IsAllowedLength判断上传文件大小是否超过最大值
public static bool IsAllowedLength(HtmlInputFilehifile)
{
// 允许上传文件大小的最大值,可以保存在xml文件中,单位为KB
int i = 20 ;
// 如果上传文件的大小超过最大值,返回flase,否则返回true.
if (hifile.PostedFile.ContentLength > i * 1024 )
{
return false ;
}

return true ;
}

#endregion


SaveFile上传文件并返回文件名 #region SaveFile上传文件并返回文件名
public static string SaveFile(HtmlInputFilehifile, string strAbsolutePath)
{
string strOldFilePath = "" ,strExtension = "" ,strNewFileName = "" ;

if (hifile.PostedFile.FileName != string .Empty)
{
strOldFilePath
= hifile.PostedFile.FileName;
// 取得上传文件的扩展名
strExtension = strOldFilePath.Substring(strOldFilePath.LastIndexOf( " . " ));
// 文件上传 后的命名
strNewFileName = GetUniqueString() + strExtension;
if (strAbsolutePath.LastIndexOf( " \\ " ) == strAbsolutePath.Length)
{
hifile.PostedFile.SaveAs(strAbsolutePath
+ strNewFileName);
}

else
{
hifile.PostedFile.SaveAs(strAbsolutePath
+ " \\ " + strNewFileName);
}

}

return strNewFileName;
}

#endregion


CoverFile重新上传文件,删除原有文件 #region CoverFile重新上传文件,删除原有文件
public static void CoverFile(HtmlInputFileffFile, string strAbsolutePath, string strOldFileName)
{
// 获得新文件名
string strNewFileName = GetUniqueString();

if (ffFile.PostedFile.FileName != string .Empty)
{
// 旧图片不为空时先删除旧图片
if (strOldFileName != string .Empty)
{
DeleteFile(strAbsolutePath,strOldFileName);
}

SaveFile(ffFile,strAbsolutePath);
}

}

#endregion


DeleteFile删除指定文件 #region DeleteFile删除指定文件
public static void DeleteFile( string strAbsolutePath, string strFileName)
{
if (strAbsolutePath.LastIndexOf( " \\ " ) == strAbsolutePath.Length)
{
if (File.Exists(strAbsolutePath + strFileName))
{
File.Delete(strAbsolutePath
+ strFileName);
}

}

else
{
if (File.Exists(strAbsolutePath + " \\ " + strFileName))
{
File.Delete(strAbsolutePath
+ " \\ " + strFileName);
}

}

}

#endregion


GetUniqueString获取一个不重复的文件名 #region GetUniqueString获取一个不重复的文件名
public static string GetUniqueString()
{
return DateTime.Now.ToString( " yyyyMMddhhmmss " );
}

#endregion

}

}

通过HtmlInputFile控件上传文件的类


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论