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
}
}
查看全文
相关阅读:
day04--项目前端相关基础知识(二)
day03--项目前端相关基础知识
day02--环境搭建与讲师管理接口开发
module3_PC端静态页面项目初始化
module3_03_写静态页面需要注意的点
module3_02_静态页面项目初始化
module3_01_版心与页面排版布局
学习上遇到的坑
flex布局相关
background中url后面按的数意思
原文地址:https://www.cnblogs.com/ghx88/p/361317.html
最新文章
SQL 向数据库中添加一列
227.基本计算器 II
222.完全二叉树的节点个数
213.打家劫舍 II
142.环形链表 II
130.被围绕的区域
1143.最长公共子序列
1011.在 D 天内送达包裹的能力
搜狗笔试题-正确答案的个数
奇安信笔试题
热门文章
柠檬微趣笔试题
Maximum Depth of N-ary Tree N叉树的最大深度
N-ary Tree Level Order Traversal N叉树的层次遍历
N-ary Tree Preorder Traversal N叉树的前序遍历
N-ary Tree Postorder Traversal N叉树的后序遍历
day09--课程列表和整合阿里云视频点播
day08--课程发布-添加课程信息
day07--课程发布-添加课程信息
day06--讲师管理模块前端开发
day05--讲师管理模块前端开发
Copyright © 2011-2022 走看看