关于fileupload控件(C#.net一定加分30)

来源:百度知道 编辑:UC知道 时间:2024/06/14 21:08:08
一个命令按钮控件 一个fileupload控件和一个image控件
asp.net(C#)
(代码功能 上传一张图片到窗体)
protected void Page_Load(object sender, EventArgs e)
{
Image1.Visible = false;
}
protected void Button1_Click(object sender, EventArgs e)
{
string strDir = FileUpload1.PostedFile.FileName;
int myPos = strDir.LastIndexOf("\\");
string strName = strDir.Substring(myPos);

string strType = strName.Substring(strName.LastIndexOf(".") + 1);
string strPath = Server.MapPath(".") + strName;

if (strType == "jpg" || strType == "gif" || strType == "bmp" || strType == "png")
{
FileUpload1.SaveAs(strPath);

Image1.ImageUrl = strName;
Image1.Visible = true;
Response.Write("图片上传成功");
}
}

还有几个不明白的地方
int myPos = strDir.LastIndexOf("\\"); //表示strDir中最后一个\\符号的下标
LastIndexOf("\\");是什么意思 //表示最后一个字符串的下标,字符串是参数
strName.Substring() 是什么意思//这个是截取字符串的意思,表示从第几位或者从某个字符串后开始截取。
strName.LastIndexOf(".") + 1 是什么意思 //把最后一个.的下标+1,用来确定图片名称的
string strPath = Server.MapPath(".") + strName;什么意思//Server.MapPath表示你项目的路径,这句话表示把图片路径设置成你项目的路径+图片的名称。

还有什么不会的可以直接来问我就好了。能回答的一定回答。

int myPos = strDir.LastIndexOf("\\"); //从字符串后面往前查找第一个\\的位置
string strName = strDir.Substring(myPos); //从上面找到的位置开始取后面的字符串,实际上就是获取你上传的文件名。

string strType = strName.Substring(strName.LastIndexOf(".") + 1); //从字符串后面往前查找第一个.的位置,并获取后面的字符串,实际就是你上传文件的扩展名
string strPath = Server.MapPath(".") + strName; //获取你上传文件在服务器上的实际物理路径