如何下载和删除已上传到服务器上的文件。

mhlxhm 2003-09-09 09:38:12
我用datagrid显示已上传的文件,每个文件对应一个checkbox。如何下载和删除已上传到服务器上的文件,不时删除数据库中的纪录。
...全文
206 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
susanyw 2003-09-18
  • 打赏
  • 举报
回复
up
alphawin 2003-09-18
  • 打赏
  • 举报
回复
我写了个例子,发给你了
cnhgj 2003-09-18
  • 打赏
  • 举报
回复
using System.IO;

File.Delete(Server.MapPath("yourfilename"));
lanyahuhu 2003-09-17
  • 打赏
  • 举报
回复
mark
qiujinwen 2003-09-12
  • 打赏
  • 举报
回复
下载直接通过http地址下载。删除的话可以通过webDav协议删除.
humin1906 2003-09-12
  • 打赏
  • 举报
回复
同意
momoguagua 2003-09-11
  • 打赏
  • 举报
回复
你要是在服务器端删除的话,aimPath必须是服务器端的物理路径才可以删除,如果是ntfs分区,你必须增加ASPNET有修改这个文件夹的权限,你用的postedFile.FileName是客户端上传的本机路径吧?
honghaozi 2003-09-11
  • 打赏
  • 举报
回复
把你的.aspx贴出来
mhlxhm 2003-09-11
  • 打赏
  • 举报
回复
程序如下:
int count=this.DataGrid1.Items.Count;
if(count!=0)
{
HtmlInputCheckBox cb=new HtmlInputCheckBox ();
for(int i=0;i<count;i++)
{
cb=(HtmlInputCheckBox)this.DataGrid1 .Items [i].FindControl ("check");
if(cb.Checked ==true)
{
int id =int.Parse (DataGrid1 .Items [i].Cells[3].Text);
jpda.CommandText="delete from uploadfile where id="+id.ToString ();
string error = null;
jpda.ExcuteNonQuery(out error);
uf.Delete();
}
}
}


public void Delete()
{

string fileFullName=this.postedFile.FileName;
int pos=fileFullName.LastIndexOf("\\");
string fileName=fileFullName.Substring(pos+1);
aimPath+=fileName;
System.IO.File.Delete(aimPath);
}

请问大家哪儿错了啊?
momoguagua 2003-09-11
  • 打赏
  • 举报
回复
你取aim的服务器端的路径就可以啦,你把文件存那里啦??要是存数据库里的话你就update tablename set file='' where &^%*@#$^@#$
mhlxhm 2003-09-11
  • 打赏
  • 举报
回复
是啊。我应该怎么办啊?
wolve 2003-09-09
  • 打赏
  • 举报
回复
下载直接作个链接到要下载的文件,删除用system.io中相应的类就可以轻松实现
honghaozi 2003-09-09
  • 打赏
  • 举报
回复
form的enctype属性必须设成="multipart/form-data"
否则<INPUT type="file">无效
wolve 2003-09-09
  • 打赏
  • 举报
回复
没明白你在什么地方出错了
你是不是把HtmlInputFile作为datagrid对象的子控件,你可以通过findcontrol加upcast来得到,你所说的NullReferenceException发生在什么地方。
一般说来,NullReferenceException比较容易处理,你debug跟踪一下,看相应的变量在运行时是不是空就知道了
mhlxhm 2003-09-09
  • 打赏
  • 举报
回复
删除时遇到下面的错误:

未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:


行 195: {
行 196:
行 197: string fileFullName=this.postedFile.FileName;
行 198: string fileName=PathToName(fileFullName);
行 199: aimPath+=fileName;

我猜原因是在datagrid对象中无法取得HtmlInputFile对象的实例。因为我发现HtmlInputFile
对象的实例根本无法传递到datagrid对象或表格对象中。请问大家如何解决?

110,549

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧