如类似以下的代码:
复制代码 代码如下:
Uri uri = new Uri(targetUrl);//targetUrl对应文件的绝对路径
System.Net.HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Method = "PUT";
request.Credentials = System.Net.CredentialCache.DefaultCredentials;
request.ContentLength = stream.Length;
文件名为:fr#32%.xls (excel附件)
上传到服务器上,发现变成fr.xls了,文件名不对,所以就造成下载不了。
原因在于:一些 URI 包括段标识符或查询。段标识符是 URI 中跟在数字符号 (#) 后的任何文本,存储在 Fragment 属性中。
查询信息是 URI 中跟在问号 (?) 后的任何文本,存储在 Query 属性中。也就是说,Uri类会对文件路径#号后面的内容进行拆分存放。
而且,Uri中的相关属性也只读(ReadOnly)的,那么就只能通过其它路径来修改了。
解决方法:
UriBuilder 类,为统一资源标识符 (URI) 提供自定义构造函数,并修改 Uri 类的 URI。跟Uri 的功能一样,但它的相关属性可以进行设置。
修改后的代码如下:
复制代码 代码如下:
Uri uri = WebHelper.ProcessSpecialCharacters(targetUrl);//targetUrl对应文件的绝对路径
System.Net.HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Method = "PUT";
request.Credentials = System.Net.CredentialCache.DefaultCredentials;
request.ContentLength = stream.Length;
/// <summary>
/// 当上传或下载的文件名包含有特殊字符"#"时,需要执行以下的函数进行处理
/// </summary>
/// <param name="Url"></param>
/// <returns></returns>
private static Uri ProcessSpecialCharacters(string Url)
{
Uri uriTarget = new Uri(Url);
if (!Url.Contains("#"))
{
return uriTarget;
}
UriBuilder msPage = new UriBuilder();
msPage.Host = uriTarget.Host;
msPage.Scheme = uriTarget.Scheme;
msPage.Port = uriTarget.Port;
msPage.Path = uriTarget.LocalPath + uriTarget.Fragment;
msPage.Fragment = uriTarget.Fragment;
Uri uri = msPage.Uri;
return uri;
}
Uri uri = new Uri(targetUrl);//targetUrl对应文件的绝对路径
相关推荐:
ChatGPT怎么突然不能打开了?你需要了解的原因与解决办法,ai写作有什么问题吗怎么解决
一键创作,助你轻松实现创意梦想,最低价刷粉网站推广
用AI写一篇文章,如何提升你的写作效率与创意
什么是seo伪原创,seo就业前景伪原创怎么写 ,头像ai画怎么弄
ChatGPT坏了用什么?替代方案,满足你的智能对话需求,星际一的ai
SEO领站-从零到一打造成功网站排名的秘密,轻淘客seo怎设置
seo需要什么人员,seo需要什么技能 ,画大学ai
SEO职责:为网站注入流量,提升品牌竞争力,拼多多女装关键词排名
用AI写文章会不会查重率高?破解写作困扰的真相
seo网络培训是什么,seo工作培训会培训啥 ,ai长投影字
ChatGPT手机下载后打不开?可能是这些问题导致的,解决方法在这里!,孤城ai动画
AI免费生成文章让创作变得轻松自如
SEO工装裤-打造时尚与实用兼备的工作利器,ai画中国爸爸辅导孩子写作业
SEO难吗?揭秘SEO背后的真相,让你轻松上手!,大旺百度网站推广
SEO埋词技巧,如何提升网站排名?,贵州营销推广方法
SEO超级,助力企业站点冲刺搜索引擎排名,白云全网营销推广哪家强
AI自动帮写,轻松应对内容创作挑战,赋能写作新未来,嘿科技ai
360ai答题-赋能教育,开启智能学习新纪元,ai 果汁
SEO对策:提升网站排名与流量的必备策略,SEO入门相机平价学生
SEO而且:打造高效网站流量增长的秘密武器,滨江网站推广营销
AI网页设计生成-智能化创造无限可能,ai机甲风背景音乐
SEO项目:如何通过精确优化提升企业网站排名与转化率,武汉做网站优化的公司
seo网站需要做什么,seo都需要做什么 ,ai怎么做喷漆效果
ChatGPT为什么访问不了了?了解背后的原因与解决方法,AI怎么拖入路径
SEO挣钱之道:如何通过SEO实现网络盈利,宁晋网站建设商家
怎么用AI缩写文章,轻松提高效率的全新方法
seo稿件是什么意思,seo文章写作要求 ,ai写作未来展望和展望
为什么选择B站VIP?让你畅享更丰富的视听体验,小门类网站seo
AI免费文章解读:智能写作新篇章,小店AI
seo词库优化,搜索词条优化 ,ai点选择
SEO优化全攻略提升网站排名的关键步骤与未来趋势,这是什么新晋动画ai
AI缩写文本:助力智能生活的革新力量,ai智能写作生成神器下载
GPT怎么收费?揭秘AI技术的定价与价值,ai报考高考
优化原理:提升效率、创新突破的核心法则,印刷包装推广有哪里网站
ChatGPT连了外网也登不了?如何解决这一问题,重新畅享AI助力!,ai少女大瓜
AI网页版智能问答,开启智慧沟通新时代,ai梦境档案用不了手柄
ChatGPT出问题?背后的原因与解决方案,夸克ai写作生成
ChatGPT打开后空白:如何解决这个困扰并高效使用AI助手,ai四声怎么写
ChatGPT模型进化历程:人工智能的智慧革命,ai 喷枪星空
GPT哪个模型是最新的?AI语言生成的未来,ai回头
SEO怎么设置:让你的网站快速登上搜索引擎首页的秘密,Ai压印分色
ChatGPT为什么页面下拉不了?问题解析与解决方案,ai对准
SEO监控:精准把握网站排名与优化成效的利器,湖南seo排名商家名单
ChatGPT中文版下载,开启智能对话新体验,婚纱ai男
ChatGPT360:全方位提升你的工作与生活效率,ai72787
ChatGPT充值打不开?这几招教你轻松解决问题!,免费的ai写作绘图
seo需要学习什么语言,做seo需要懂什么技术 ,ai软件制作教程
优化分析:提升企业效益的关键策略,山东大网站建设
seo运营经理是什么,seo和运营的区别 ,皖妍ai宁慕晴o
智能AI写作生成:如何借助人工智能提升创作效率与质量