新手电脑网's Archiver

syziy 发表于 2008-10-4 21:37

服务器上传文件并创建文件夹的例子

前台代码2t.v,W9aIkA
Default2.aspxS.|$cVx%lw-ZJ;\
======================================+vUT2d!i n N
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>,?'D5yeD_E(O kr&?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">YZ.]_se+v)Sl
<html xmlns="http://www.w3.org/1999/xhtml" >
_r!Ld0L <head id="Head1" runat="server">
7mZ3H t4op <title>无标题页</title>K`7b!K1Gj
</head> F;G B;A6s.@.x)|b
<body>
tl7w|$X <form id="form1" runat="server">o:j0}!lg!|\pVL3b1l'l
<div>
`$l:S"pfp&VI <br />
0S;AyJ/Od f5j m^ %kV3@,Ob$f*}\
<asp:FileUpload ID="fileUpload" runat="server" />
%ZI wjb t/c <asp:Button ID="Button2" runat="server" Text="上传" />
b1|~ E3Es3xE <aspabel ID="lblState" runat="server" Text="Label"></aspabel></div> kc$Fsj2E E3hyL$M
</form>`_&}J0m0p1\W
</body>
~%mLX(} Ma </html>
n"M*H@Y)]pq |b^
"r'G;@t6Bj 9`S]M d'C#C{ N
===========================================1YHj1B"F3B O?i
后台代码'\$~fJ0fev9M
Default2.aspx.cst!P8A,{H!Q p
================================================================================9mBJ)`E%I`
using System;y2Viu } \,w2h
using System.Data;_k;LsQ2ch
using System.Configuration;
k3KGN3V@,i-l'PUd using System.Collections;
C*u9O%xG1b#f7Fr using System.Web;M9M[F7bb
using System.Web.Security;
[p$nl1wq using System.Web.UI;k3w}C%r$i2X(kR/g%A
using System.Web.UI.WebControls;
xP"B'X D;ddf using System.Web.UI.WebControls.WebParts;
A F&[+`X,k1h2lj B using System.Web.UI.HtmlControls;
].H,I`J*gT using System.IO;
|+H}BJ8r public partial class Default2 : System.Web.UI.Page
L~1eyL {g0Z|T Q'A
protected void Page_Load(object sender, EventArgs e)9S#k(U0w swG2J
{
vO V^cX }-U*^r7].Q4X*A j;cS
protected void Button2_Click(object sender, EventArgs e)
4xA Re3x8F/_O7m @:uW-K {;ggP,?;Q1Yn'}J?
if (this.fileUpload.PostedFile.FileName == "")
L;r{F |+Z {te1?{U5JBA'e
Response.Write("不能上传空文件");
N4p9F0i_k w9F w return;D N([:e)~sp
}
x.e)`5Vp Z_1|lX7F_ try
6m;Ygtma!q {(j1s*R*{:u~i
String path = Server.MapPath("upload/");//保存上传文件的文件夹upload虚拟路径对应的实际路径
AMTbp8K string pt = path;
?S@&U2z p$~ I string fn = "";aD~ m/~
if (!Directory.Exists(pt)) //如果文件夹不存在则创建
-Y(`K8v S {5_hg(wS-Sp
Directory.CreateDirectory(pt);
GQUH9YdK }0ty |2m0L [
string filePath = this.fileUpload.PostedFile.FileName;//客户端文件的实际地址kP,S vm&v/D
string serverPath = path + filePath.Substring(filePath.LastIndexOf("\\") + 1);//上传的文件保存在服务器端的路径@Bfc"|7i"m5a5\4T
string fileName = filePath.Substring(filePath.LastIndexOf("\\") + 1);
.[#\%TA+co IM8~Y System.Text.StringBuilder builder = new System.Text.StringBuilder(filePath);
r+aNns$ay builder.Append("\n上传文件的类型:" + this.fileUpload.PostedFile.ContentType.ToString() + Environment.NewLine + "");qWs,SS4qK:y&i
builder.Append("\n客户端文件地址:" + this.fileUpload.PostedFile.FileName + Environment.NewLine + "");xgKL'icAuz
builder.Append("\n上传文件的文件名:" + fileName + Environment.NewLine + "");Gtj3nF+B h
builder.Append("\n上传文件的扩展名:" + filePath.Substring(filePath.LastIndexOf(".") + 1) + Environment.NewLine + "");
g y"W^5gFOU7N&B?[ builder.Append("\n上传文件的大小:" + this.fileUpload.PostedFile.ContentLength / 1024 + "k" + Environment.NewLine + "");
X)h(r(D sN3wf y;E4kgqU
if (System.IO.File.Exists(serverPath))//判断服务器上是否有同名文件存在0_1|2O!n aQ"{
{
kJ$SE0J:["rE \ this.lblState.Text = "这个文件在服务器上已经存在,请不要重复上传!";
1a$PYfd4r)s return;
&? t#kZ5l/Wb.fP }5Btr9X.T1E KN
this.fileUpload.PostedFile.SaveAs(serverPath);//保存文件
8a s L5~j$y0ill,L"G)z ? this.lblState.Text = builder.ToString();//将这个StringBuilder的内容写到label中去3c w(N5k%Ml%lk
}
f,C!k5H1] catch (Exception ex)
-{[0o8XUt {
A s6vv8B'g&y6L W Response.Write(ex.Message);
4Nt(O&Y1b,f,?0t6f }Ng TxYW
}L2{y@C5| A5m*]
}

页: [1]

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.