︷起↘嚸.
坚持不懈,一步一个台阶
随笔- 80 文章- 0 评论- 15
博客园
首页
新随笔
新文章
联系
管理
订阅
asp.net--文件上传
//判断文件类型是否符合标准
public
static
bool
IsAllowedExtension(FileUpload hifile)
{
System.IO.FileStream fs
=
new
System.IO.FileStream(hifile.PostedFile.FileName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
System.IO.BinaryReader r
=
new
System.IO.BinaryReader(fs);
string
fileclass
=
""
;
byte
buffer;
try
{
buffer
=
r.ReadByte();
fileclass
=
buffer.ToString();
buffer
=
r.ReadByte();
fileclass
+=
buffer.ToString();
}
catch
{
}
r.Close();
fs.Close();
if
(fileclass
==
"
255216
"
||
fileclass
==
"
7173
"
)
//
说明255216是jpg;7173是gif;6677是BMP,13780是PNG;7790是exe,8297是rar
{
return
true
;
}
else
{
return
false
;
}
}
/**/
///
<summary>
///
保存上传的文件
///
</summary>
///
<param name="fileType">
要验证的文件类型
</param>
///
<param name="lenghtKB">
大小(单位:KB)
</param>
///
<param name="filePath">
保存的路径(绝对路径)
</param>
///
<param name="upLoad">
上传文件的控件
</param>
///
<param name="fileName">
成功:保存后的文件名.失败:错误信息
</param>
///
<returns>
是否保存成功
</returns>
public
static
bool
SaveFile(
string
fileType,
int
lenghtKB,
string
filePath, FileUpload upLoad,
out
string
fileName)
{
//
判断是否上传了文件
if
(
!
upLoad.HasFile)
{
fileName
=
"
无效的文件内容
"
;
return
false
;
}
//
判断文件大小
if
(upLoad.PostedFile.ContentLength
>
lenghtKB
*
1024
)
{
fileName
=
"
文件超过上传大小
"
;
return
false
;
}
//
文件类型
string
type
=
upLoad.FileName;
string
last
=
type.Substring(type.LastIndexOf(
'
.
'
)
+
1
);
type
=
upLoad.PostedFile.ContentType;
//
type = type.Substring(type.LastIndexOf('.') + 1);
if
(type.Substring(
0
,
5
)
!=
fileType)
{
fileName
=
"
无效的文件类型
"
;
return
false
;
}
DateTime date
=
DateTime.Now;
//
生成文件名
fileName
=
date.Year.ToString()
+
date.Month.ToString()
+
date.Day.ToString()
+
date.Hour.ToString()
+
date.Minute.ToString()
+
date.Second.ToString()
+
GetRandom().Next(
0
,
999
)
+
"
.
"
+
last;
upLoad.SaveAs(filePath
+
@"
\
"
+
fileName);
return
true
;
}
,
这个送给你!
posted on 2008-07-15 11:13
︷起↘嚸.
阅读(73)
评论(0)
编辑
收藏
网摘
所属分类:
ASP.NET
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
人才
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
该文被作者在 2008-07-18 13:53 编辑过
Google站内搜索
China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》
相关文章:
相关链接:
所属分类的其他文章:
ASP.NET财付通支付接口源码
C#根据字节数截取字符串【转载】
P处理备份代码
vs2005新建项目中没有ASP.NET WEB应用程序【转载】
asp.net--MD5加密
C#--委托和事件
asp.net--文件上传
ASP.NET--使用Socket发送和接收消息[转载]
ASP.NET 2.0的URL映射的实现方法
初学--ASP.NET分页控件
最新IT新闻:
谷歌李开复:我的传奇人生源于十句箴言
Twitter杀手Pownce被收购 两周内关闭服务
Live Search新增“即时返现”服务
MySpace CEO:明年广告营收仍会增长
2日科技博客精选:Windows占有率首次跌破90%
<
2008年7月
>
日
一
二
三
四
五
六
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
与我联系
发短消息
搜索
常用链接
我的随笔
我的空间
我的短信
我的评论
更多链接
我的参与
我的新闻
最新评论
我的标签
留言簿
给我留言
查看留言
我参加的小组
每日一句英语
jQuery
AJAX
随笔分类
Ajax JavaScript(31)
ASP.NET(26)
Everyday English(1)
HTML Design(3)
SQL SERVER(2)
vs2008(1)
Winform(2)
控件和组件开发(5)
生活娱乐(5)
正则表达式(3)
综合应用(1)
随笔档案
2008年11月 (3)
2008年10月 (1)
2008年9月 (2)
2008年8月 (11)
2008年7月 (38)
2008年6月 (6)
2008年5月 (15)
2008年4月 (4)
相册
我的相册
收藏夹
Ajax(1)
ASP.NET Control(1)
JavaScript(3)
序列化和反序列化(2)
最新随笔
1. js--自由控制数据小数位
2. ASP.NET财付通支付接口源码
3. C#根据字节数截取字符串【转载】
4. Time flow
5. 很牛的悬浮样式(兼容ie6,ie7,firefox)
6. 无题
7. P处理备份代码
8. jQuery之ajax学习总结
9. 如何用SQL语句为数据库表列添加描述
10. jQuery实现表单验证
积分与排名
积分 - 6130
排名 - 5011
最新评论
1. re: JQuery实现省市区三级联动
这个跟jquery其它的库冲突啊,望解决一下啊,
--之
2. re: ASP.NET--委托和事件
@homaster
真是不好意思,没怎么注意
--︷起↘嚸.
3. re: ASP.NET--委托和事件
老兄,winform怎么写个asp.net的标题
--homaster
4. re: Time flow
is rubbish
--lichengwei
阅读排行榜
1. JS控制上传文件大小(440)
2. 网页幻灯片效果(430)
3. JQuery实现省市区三级联动(356)
4. vs2005新建项目中没有ASP.NET WEB应用程序【转载】(250)
5. jQuery实现模式窗口登录(222)
评论排行榜
1. JQuery实现省市区三级联动(3)
2. ASP.NET--使用Socket发送和接收消息[转载](3)
3. C#--委托和事件(2)
4. JS控制上传文件大小(2)
5. 无题(2)