返回列表 发新帖

asp.net获取服务器指定文件夹目录文件并提供下载的方法

218.8k 8
swmozowtfl 发表于 2015-7-31 22:04:05|湖北 | 查看全部 阅读模式
本文实例讲述了asp.net获取服务器指定文件夹目录文件并提供下载的方法。分享给大家供大家参考。具体实现方法如下:
+ r! \" x8 ^+ Z7 Q% o复制代码 代码如下:string dirpath = httpcontext.current.server.mappath(uploads/);
5 V9 m, J% ]+ Y* x( bif (directory.exists(dirpath))
* ^; H- R) d2 C1 r4 P6 t* O{
1 z. c/ k7 }, H- t& h. g9 L//获得目录信息
! R+ Y1 t* y2 y% G, Y, K1 V8 P1 Ndirectoryinfo dir = new directoryinfo(dirpath);
/ [! G& ]9 |4 i/ b& z//获得目录文件列表
: e- G' g9 {+ r6 [! ?# Hfileinfo[] files = dir.getfiles(*.*);5 @* T1 {* p) @$ l6 m0 }4 D
string[] filenames = new string[files.length];% c& W: N8 J3 ~
//临时数据表
  `9 o1 f9 K" z# S' }2 edatatable dt = new datatable();
/ G" a) U; r5 @# I2 a; Mdt.columns.add(filename);
. D7 t* }2 F# v) w$ g# [
6 H; P. }4 c2 b/ ^" n+ L  s6 lforeach (fileinfo fileinfo in files)$ e, f% K  t% j2 }) [5 X" ]
{
* t- t9 Z0 p. n3 ~; x( rdatarow dr = dt.newrow();
8 c: _8 B4 l  V3 P- e- ndr[filename] = fileinfo.name;
& R: O4 \* H: _1 v0 O9 ?dt.rows.add(dr);
' M' Z/ S# x) Q6 j5 J}
3 e* c( q6 F2 C& \2 zrepeater1.datasource = dt;
: a/ r7 P+ v3 M% z+ C% l$ k# _  Nrepeater1.databind();
/ t* F  R) j, }8 J" C}3 n. }8 d# \% R* T* f+ k; H
if (e.commandname == down)( {. G4 y" E0 q, v; T0 W
{4 d2 l9 Z; _; I: l- V9 V
try
4 w$ T0 P6 v( U& b{
- }8 t& s7 q) u( Q9 dstring downloadfilename = ~/uploads/ + e.commandargument.tostring();//文件路径4 Z' x; ^% i- z) j2 \$ l: b+ i
string filepath = server.mappath(downloadfilename);1 S2 O  N* G0 p) @3 \1 e% t3 Z
string filename = path.getfilename(filepath);
- t) G( `" {# d) W: ~; hfileinfo file = new fileinfo(filepath);( \8 E: \5 @/ ]
response.clear();4 f- c& ~- c( r" u5 Y. S+ T4 e
response.contenttype = application/octet-stream;
! i( ]+ N. l2 t' Zresponse.addheader(content-disposition, attachment; filename= + httputility.urlencode(filename, system.text.encoding.utf8));
/ \1 t% @( p5 ?+ N. aresponse.addheader(content-length, file.length.tostring());! [8 U! o8 I$ g, V4 K; m
response.flush();  T; W. u4 }- P# V3 L2 Y3 h
response.writefile(filepath);
+ a. i" J. y5 W- g% X3 H}6 K- I7 b6 W# j* U. @
catch/ Q3 g4 v* v  G
{
) R) S  w" X1 g+ S" v1 R' }$ x) ?response.write(<script>alert('没有找到下载的源文件')</script>);) k; P. ~0 |- g: a6 E
}( U4 d7 s8 y: d4 u  [
}+ ?3 m( e3 \9 L/ t( U% b9 W8 ]  m+ W+ w
希望本文所述对大家的asp.net程序设计有所帮助。$ L4 j6 Y$ b! J/ j+ f
, t  B% g6 b& f
更多网页制作信息请查看: 网页制作

回复|共 8 个

Acropozelan 发表于 2015-10-31 22:30:42|法国 | 查看全部
我是来收集资料滴...
seazvyt 发表于 2015-10-31 22:30:46|美国 | 查看全部
这个站一周前刚刚有了点起色
tohme 发表于 2015-10-31 22:31:03|美国 | 查看全部
@,@..是什么意思呀?
alapScady 发表于 2016-3-13 21:29:16|拉美地区 | 查看全部
要不我崇拜你?行吗?
gevaemaidovef 发表于 2016-3-13 21:29:43|日本 | 查看全部
哈哈 怎么说来眼睛小真的很好 哈 哈哈~~~~
Mqokjdvq 发表于 2016-3-13 21:29:53|美国 | 查看全部
哎 怎么说那~~
mwxny 发表于 2016-3-13 21:30:00|美国 | 查看全部
今天统计好像出了问题
effoggikeftor 发表于 2016-3-13 21:30:13|英国 | 查看全部
我去看看 网络上的事 我不是很会 哎

回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

得知互动是一个融创意、设计、开发、营销、生活、互联网于一体的专业交流分享平台。
Copyright © 2026 得知互动-专注Ai与站长技术交流社区-Ai交流平台 版权所有 All Rights Reserved. Powered by Discuz! X5.0 鄂ICP备15006301号-5|鄂公网安备 42018502006730号
关灯 在本版发帖 扫一扫添加QQ客服 返回顶部
快速回复 返回顶部 返回列表