我想上传文件,每上传一次就把文件名字绑定到一个dropdownlist中去,同时也可以删除,但这时只是把文件保存到临时表中实现的效果而已.....直到我点了保存按钮才会把文件真正保存到本地硬盘中去.大家是怎样实现的呢
解决方案 »
- 关于 数据访问层 sqldatadatater 获值
- ASP.net开发opc客户端,aspx上数值不能显示。
- js操作gridview里的textbox
- 在前台用JS实现对checkboxlist的控制
- 关于asp.net TreeView控件文本和背景的问题,为什么我TreeView控件节点上的文本,单击了几下就慢慢的变的文字看不见了,它的文字属性在那
- 明天五一,大家节日快乐。散分50,顺便问个问题!!!
- RegisterStartupScript 没用
- 有谁用过这些函数?
- 很急的问题!!!!!!
- 在ASP.NET中,怎样调用VBSCRIPT或者使用其他办法,以得到VB中setfocus效果
- 如何发布.NET 2.0网站?
- 郁闷了一天的问题
只要把这几个技术点研究透了就解决了
public string UpLoadFile(System.Web.UI.Page myPage)
{
string returnFilePath = "";
//'遍历File表单元素
HttpFileCollection files = HttpContext.Current.Request.Files;
try
{
for(int iFile = 0; iFile < files.Count; iFile++)
{
//'检查文件扩展名字
HttpPostedFile postedFile = files[iFile];
string fileName, fileExtension ;
int fileSize = 0;
fileName = System.IO.Path.GetFileName(postedFile.FileName);
fileSize = postedFile.ContentLength/1024;
if(fileSize > 1024*2)
{
return "ER:上传文件不能超过2M";
}
if (fileName != "")
{
fileExtension = System.IO.Path.GetExtension(fileName);//文件扩展名
returnFilePath += fileName + "*" + fileSize + "*" + "../upfile/" + fileName+";";
//returnFilePath += fileName+";";
}
}
}保存的时候就是用这个:
public string UpLoadFile(stirng textName,System.Web.UI.Page myPage)
{
string Path = textName.split(';');
//'遍历File表单元素
HttpFileCollection files = HttpContext.Current.Request.Files;
try
{
for(int iFile = 0; iFile < files.Count; iFile++)
{ HttpPostedFile postedFile = files[iFile];
foreach(int fileName in path)
{
if (fileName != "")
{
postedFile.SaveAs(myPage.Server.MapPath("/CompanyFrame/upfile")+"\\" + fileName);
}
}
}
}
}这样保存的后果就是,有个同样名字的文件存在,但是文件没大小,没内容.
谁能够帮我改一下代码呢.
所以你需要在服务器状态中保存上一次上传文件的内容。楼主提出的方法在标准asp.net控件中实现是不可能的,可以给你提出一个替代的方法:将用户上传的文件先保存到一个临时目录,用户的添加删除操作都在该目录进行,之后提交的时候再将该目录里面所有内容保存如数据库,然后清理掉垃圾。
这一步我想你应当可以做吧,这个与一般的绑定差不多2:可以随时删除,是放到一个临时表中实现本功能
这个我想也不难吧:不要删除文件,而是将文件的文件名中数据表A中转到表B中,这里你在DDL显示的时候用到的是A表3:点保存才真正把文件上传?不是很理解你的意思,不般不就是这样的吗?还是我理解不对?4:下面我安我的理解给你讲一下吧,首先是选择要上传的文件,然后将其上传(这里你可以将文件改名),然后是将文件名显示在DDL,再接着是做删除功能,点删除后将文件名从A表转到B表,实现模拟删除。是不是这样?
我把上传的全路径名如:D:\photo\1.jpg;D:\photo\2.jpg;D:\photo\3.jpg;保存到一个
TextBox里,现在我要根据这些路径把文件保存到/CompanyFrame/upfile,这个方法应该怎样写呢.
我把上传的全路径名如:D:\photo\1.jpg;D:\photo\2.jpg;D:\photo\3.jpg;保存到一个
TextBox里,现在我要根据这些路径把文件保存到/CompanyFrame/upfile,这个方法应该怎样写呢.
---------------------------
D:\photo\1.jpg;D:\photo\2.jpg;D:\photo\3.jpg,这个是客户端的路径?如果是这样,应该是不现实的.应该先保存到服务器的临时文件夹中,然后最终移动到实际的存储文件夹,这样觉得到可行`~建议搂主参考一下163或google的多文件上传实现方案~