有过上传文件经验的高手,帮一下啊,如何取得上传文件的路径?
privatevoidUpFile(){stringFilePath=Server.MapPath("./")+"File";HttpFileCollectionHFC=...
private void UpFile()
{
string FilePath=Server.MapPath("./")+"File";
HttpFileCollection HFC = Request.Files;
for (int i = 0; i < HFC.Count; i++)
{
HttpPostedFile HF = HFC[i];
try
{
if (HFC[i].ContentLength > 0)
{
//response.write(HF.PostedFile.FileName);
//FileUpload1.PostedFile.FileName;
HF.SaveAs(FilePath + "//" + System.IO.Path.GetFileName(HF.FileName));
Page.RegisterStartupScript("sb1", "<script language=javascript>alert('上传成功!');</script>");
}
else
{
Page.RegisterStartupScript("sb1", "<script>alert('对不起,请先选择上传的文件路径!')</script>");
}
}
catch
{
Page.RegisterStartupScript("sb1", "<script>alert('对不起,上传失败!')</script>");
}
}
}
上面是上传文件的代码,可以正常运行.但是我想取得上取文件的路径,怎么办?在ASPX文件中的上传控件名为:FileUpload1 .我试着加入了上面注释的语句
//response.write(HF.PostedFile.FileName);
或者
//FileUpload1.PostedFile.FileName;
,不过不对.望高手指教! 展开
{
string FilePath=Server.MapPath("./")+"File";
HttpFileCollection HFC = Request.Files;
for (int i = 0; i < HFC.Count; i++)
{
HttpPostedFile HF = HFC[i];
try
{
if (HFC[i].ContentLength > 0)
{
//response.write(HF.PostedFile.FileName);
//FileUpload1.PostedFile.FileName;
HF.SaveAs(FilePath + "//" + System.IO.Path.GetFileName(HF.FileName));
Page.RegisterStartupScript("sb1", "<script language=javascript>alert('上传成功!');</script>");
}
else
{
Page.RegisterStartupScript("sb1", "<script>alert('对不起,请先选择上传的文件路径!')</script>");
}
}
catch
{
Page.RegisterStartupScript("sb1", "<script>alert('对不起,上传失败!')</script>");
}
}
}
上面是上传文件的代码,可以正常运行.但是我想取得上取文件的路径,怎么办?在ASPX文件中的上传控件名为:FileUpload1 .我试着加入了上面注释的语句
//response.write(HF.PostedFile.FileName);
或者
//FileUpload1.PostedFile.FileName;
,不过不对.望高手指教! 展开
4个回答
展开全部
先拖一个HTML控件file field 设置其id为SelectFile并设置其language=c#,runat=server,再在你该程序下目录下新建一个document文件夹,忘记了是不是还需要设置下该文件夹的权限(添加一个every one用户赋予全部权限)
然后再如写代码:
string selectfile="";
string file=SelectFile.PostedFile.FileName.ToString().Trim();
if (!file.Equals(""))
{
string path=Server.MapPath(".");
string fileName = System.IO.Path.GetFileName( SelectFile.PostedFile.FileName );
path += "\\document\\";
selectfile = System.IO.Path.Combine(path,fileName);
SelectFile.PostedFile.SaveAs( selectfile);
Page.RegisterStartupScript("sb1", "<script language=javascript>alert('上传成功!');</script>");//此时你去看document文件夹下已经有你上传的文件了
}
然后再如写代码:
string selectfile="";
string file=SelectFile.PostedFile.FileName.ToString().Trim();
if (!file.Equals(""))
{
string path=Server.MapPath(".");
string fileName = System.IO.Path.GetFileName( SelectFile.PostedFile.FileName );
path += "\\document\\";
selectfile = System.IO.Path.Combine(path,fileName);
SelectFile.PostedFile.SaveAs( selectfile);
Page.RegisterStartupScript("sb1", "<script language=javascript>alert('上传成功!');</script>");//此时你去看document文件夹下已经有你上传的文件了
}
展开全部
用System.IO.File下的一个方法,名字我忘了好像是Extend吧,获取文件的后缀名。另外再获取文件名的字符串进行SubString取子字符串,获得去除\\或者//的路径,最后自己进行字符串累加就好了。
还有有可能是你上传文件控件的问题,换一个控件试试
还有有可能是你上传文件控件的问题,换一个控件试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把上传的文件夹名称与你的FileUpload1.PostedFile.FileName连接起来就是完整的路径了撒!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
string fileExtend = filePage.Substring(filePage.LastIndexOf('.') + 1);
string fileName = DateTime.Now.ToFileTime().ToString();
string fileAllName = fileName + "." + fileExtend;
string path = "~/Upload/" + fileAllName;
if (filePage.Length != 0)
{
if (fileExtend == "bmp" || fileExtend == "jpg" || fileExtend == "gif")
{
FileUpload1.PostedFile.SaveAs(Server.MapPath(path));
courseinfo.ImageSrc = fileAllName;
}
else
{
MessageBox("您上传的图片格式不对,请重新上传!");
return;
}
}
这是我一个上传图片的,你看看,应该有帮助
string fileName = DateTime.Now.ToFileTime().ToString();
string fileAllName = fileName + "." + fileExtend;
string path = "~/Upload/" + fileAllName;
if (filePage.Length != 0)
{
if (fileExtend == "bmp" || fileExtend == "jpg" || fileExtend == "gif")
{
FileUpload1.PostedFile.SaveAs(Server.MapPath(path));
courseinfo.ImageSrc = fileAllName;
}
else
{
MessageBox("您上传的图片格式不对,请重新上传!");
return;
}
}
这是我一个上传图片的,你看看,应该有帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询