zoukankan
html css js c++ java
通过HtmlInputFile控件上传文件的类(转)
作者:小山
using
System;
using
System.Web.UI.HtmlControls;
using
System.IO;
namespace
Document.Bll
{
public
class
HtmlInputFileControl
{
HtmlInputFileControl
HtmlInputFileControl
#region
HtmlInputFileControl
public
HtmlInputFileControl()
{
}
#endregion
IsAllowedExtension是否允许该扩展名上传
IsAllowedExtension是否允许该扩展名上传
#region
IsAllowedExtension是否允许该扩展名上传
public
static
bool
IsAllowedExtension(HtmlInputFile hifile)
{
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判断上传文件大小是否超过最大值
IsAllowedLength判断上传文件大小是否超过最大值
#region
IsAllowedLength判断上传文件大小是否超过最大值
public
static
bool
IsAllowedLength(HtmlInputFile hifile)
{
//
允许上传文件大小的最大值,可以保存在xml文件中,单位为KB
int
i
=
20
;
//
如果上传文件的大小超过最大值,返回flase,否则返回true.
if
(hifile.PostedFile.ContentLength
>
i
*
1024
)
{
return
false
;
}
return
true
;
}
#endregion
SaveFile上传文件并返回文件名
SaveFile上传文件并返回文件名
#region
SaveFile上传文件并返回文件名
public
static
string
SaveFile(HtmlInputFile hifile,
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重新上传文件,删除原有文件
CoverFile重新上传文件,删除原有文件
#region
CoverFile重新上传文件,删除原有文件
public
static
void
CoverFile(HtmlInputFile ffFile,
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删除指定文件
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获取一个不重复的文件名
GetUniqueString获取一个不重复的文件名
#region
GetUniqueString获取一个不重复的文件名
public
static
string
GetUniqueString()
{
return
DateTime.Now.ToString(
"
yyyyMMddhhmmss
"
);
}
#endregion
}
}
查看全文
相关阅读:
iOS 11和xcode9
#ifdef __OBJC__宏定义的作用
项目小分析------从 优普钱包工资单 谈代码的规范性和界面的一般写法
UIAlertView 点击按钮后控制其是否消失
iOS 限制输入字数完美解决方案
tn文本分析语言(四) 实现自然语言计算器
重磅开源:TN文本分析语言
差一点其实差很多
光棍节之夜,用数据分析帮女神学姐选婚房
你能排第几?2016互联网行业薪酬数据分析
原文地址:https://www.cnblogs.com/ghx88/p/361317.html
最新文章
centos7系统管理和运维实战
网易即时通讯云平台99.99%可靠性的运维经验谈
linux下普通用户如何使用80端口启动程序
什么是core dump linux下用core和gdb查询出现"段错误"的地方
Rsyslog配置文件详解
基于 HTML5 WebGL 的 3D 科幻风机
基于 HTML5 + WebGL 的无人机 3D 可视化系统
基于 HTML5 WebGL 的 3D 棉花加工监控系统
基于 HTML5 + WebGL 的宇宙 3D 展示系统
基于 HTML5 WebGL 构建智能数字化城市 3D 全景
热门文章
基于 HTML5 + WebGL 的 3D 太阳系系统
基于 HTML5 + WebGL 的宇宙 3D 展示系统
基于 HTML5 WebGL + VR 的 3D 机房数据中心可视化
基于 HTML5 + WebGL 的垃圾分类系统
基于 HTML5 + Canvas 实现楼宇自控系统
Block(二)内存管理与其他特性-b
Block(一)基础-b
iOS中app的分发测试
@weakify, @strongify
ios面试题来一波
Copyright © 2011-2022 走看看