首页 > 原创文章 > 软件开发 > 查看文章

文件名中包含空格,下载时报404出错的办法

所属分类:软件开发 来源: 丁老师原创 更新时间:2024-11-27 16:46 浏览: 4450 IP属地: 深圳

最近有同学提问,在开发的软件项目中,用户上传的文件名中包含空格,导致用户点击下载时,提示找不到该文件,404的错误,这种问题怎么解决呢?

首先,引起这种问题的原因就是文件名中有空格,导致了下载的url无法形成完成的链接。我分别做了两个下载链接,一个是正常文件名的文件,一个是文件名中有空格的文件,他们的链接对比如下:
image.png
看出来了吗?第一个链接是完整的,第二个链接的文件名“作者信息表 自动化”中间有空格,相当于url链接已经截断了,这样肯定是没办法下载的。

那么问题来了,遇到这种情况的文件,要怎么才能下载呢?

其实,遇到有空格或者是特殊字符的文件名,用原文件名是无法下载的,只需要对文件名进行一下编码就好,具体的编码方法,每种开发程序语言各不相同。
丁老师根据程序语言的不同,列出了每个程序的编码方法,具体如下:

#php
$str=rawurlencode("作者信息表 自动化");
#java
String str="作者信息表 自动化";
str=URLEncoder.encode(str,"UTF-8").replace(" ","%20");
c#
string str = "作者信息表 自动化;
str=WebUtility.UrlEncode(str,"UTF-8").Replace(" ","%20");


标签:

相关文章

一些常用的CSS代码分享

flex-space-betweendisplay:flex;justify-content:space-between;flex-columndisplay:flex;flex-flow:column;flex居中display:fl...

PHP提示Array and string ...

在使用PHP开发的程序时,突然遇到错误,查看错误日志发现提示:Array and string offset access syntax with curly braces is no longer supported,这是怎么回事呢?...

织梦dedecms防止木马漏洞的方法

织梦dedecms,很多站长起初建设网站都是织梦dedecms。因为程序非常符合seo优化,但是随着用的人越来越多,特别是一些精通织梦的人就想着搞一搞别人用织梦做的站,所以织梦出现了很多安全漏洞问题,该如何设置网站安全防护呢?

Mysql导入数据库时出现Unknown c...

有同学提问,在使用mysql导入数据库时,出现了Unknown collation: 'utf8mb4_0900_ai_ci'的错误,是怎么回事呢?其实这是因为,导出数据时,用的是mysql高版本的数据库,一般来说是8....

推荐文章

BT宝塔升级方法

由老版本7.2自动升级时,会出现很多问题,建议在终端手动升级。升级命令:curl http://download.bt.cn/install/update_panel.sh|bash

Uniapp开发小程序内的图片扫码

在使用uniapp开发的小程序内,打开图片,长按没有弹出菜单,无法扫码,此时只需在图片上加入show-menu-by-longpress即可完整代码:<image :src="picture" mode="...

PDF和图片怎么添加水印

pdf添加水印,可以使用专业的pdf工具,如Adobe Acrobat、福昕PDF阅读器等,支持文字和图片形式的添加水印,支持透明度设置、水印位置设置等。图片添加水印,可以使用photoshop软件,但是photoshop太大了,而且使用起...

微信小程序提示“手机号快速验证组件”资源包用...

微信小程序自2023年8月起,开始对《手机号快速验证组件》进行收费,每个小程序有1000次的免费额度,超过额度就要收费。说白了就是以后在使用微信小程序获取用户手机(用户主动授权)的时候,需要按次数收费了。那么,在当前的经济状况下,如何做到轻...