.net文件上传的问题

qlc263 2008-01-14 04:52:24
现在碰到一个问题如下:
假设现在要上传文件“中国.rar”,在为了保证多个人上传同一个文件名的文件时不被替换,在上传时肯定是要修改默认文件名的,但是客气要求在下载的时候还要保证文件是原来的,不要用修改后的文件名,要怎么办?谁有比较好的解决方法?谢谢
问题流程就是这样
中国.rar----上传(为了防止相同文件名替换的问题)---修改文件名20080114.rar,这样可以完全成功上传下载,但是现在客户又有了新要求:就是在下载20080114.rar的时候,或者在页面上点击另存为,让文件名处还要显示"中国.rar",不知道有没有高手有好的解决办法?谢谢
...全文
165 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
aspnet_yang 2008-01-16
  • 打赏
  • 举报
回复
12楼的方法很妙!虽然下载的还是20080114.rar,但已经让别人觉得是“中国.rar”
qlc263 2008-01-16
  • 打赏
  • 举报
回复

代码就是这样,给大家参考一下
    <a href="js/2007.rar" onclick="down();" id="down">下载试用</a>
<input type="hidden" id="hiddenid" runat="server" value="js/aa.rar" />

<script type="text/javascript">
function down()
{
document.getElementById("down").href=document.getElementById("hiddenid").value;
}
document.onmousedown=down;
</script>


qlc263 2008-01-16
  • 打赏
  • 举报
回复
其实问题我已经解决了。。。只需要加一个隐藏控件就行。。。然后加个JS来控制获取下载的真始文件名,而且不用在上传的时候需要手工添加真实文件名
不过还是感谢12楼的
chaoyang95 2008-01-15
  • 打赏
  • 举报
回复
数据表File设计三个字段:
id
FileName(存储原始文件名如:中国.rar)
FilePath(存储文件真实路径:upload/20080114.rar )

上传文件的页面有两个控件:
textbox:你上传文件的时候填写原始文件名:中国 ,存放在FileName字段,当然要加上后缀名了
file:上传时候用时间来重命名就可以避免覆盖,路径存放在FilePath字段

下载页面
<a href=rs("FilePath")> 本地下载: rs("FileName") </a>
就可以了,希望 你可以看明白
XINERZHUI 2008-01-15
  • 打赏
  • 举报
回复
上面贴的是VB.NET代码,注意需要把 & 改一下。
XINERZHUI 2008-01-15
  • 打赏
  • 举报
回复
你可以有一个新页面,这个页面接受一个参数,后台根据参数查询要显示的文件名,然后在Page_Load中添加一个Header
Response.AddHeader("Content-Disposition",   "inline;filename="   &   saveAsFileName)


其中SaveAsFileName为你从数据库中读取的文件名。
qlc263 2008-01-15
  • 打赏
  • 举报
回复
怎么没人回了啊?高手详细贴个方法出来 啊,,分数不够就再加喽
qlc263 2008-01-14
  • 打赏
  • 举报
回复
比如upload文件夹下存储的是上传的文件
20080114.rar
前台页面链接的时候
<a href='upload/中国.rar'> 中国 </a>
这样会提示找不到文件的
qlc263 2008-01-14
  • 打赏
  • 举报
回复
<a href='20070114.rar'>中国</a>
这样的链接,在另存为的时候显示的还是'20070114.rar',而不是中国.rar
zhuanshen712 2008-01-14
  • 打赏
  • 举报
回复
可以让他的文件名为原文件名,而存储路径为你指定的文件名。然后下载的时候,显示原文件名!
qlc263 2008-01-14
  • 打赏
  • 举报
回复
ID

修改后的文件名

原始文件名

数据库设计成上面的这样?
huming_h 2008-01-14
  • 打赏
  • 举报
回复
楼上的方法可以,多设一个字段,保存原文件名。
changjiangzhibin 2008-01-14
  • 打赏
  • 举报
回复
另加一个字段;
在WebClient中使用你想要写的文件名
qlc263 2008-01-14
  • 打赏
  • 举报
回复
存二个字段?楼上的,具体说
babymm 2008-01-14
  • 打赏
  • 举报
回复
你在数据库中存两个字段就可以了啊

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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