文件夹名称包含#符号,但没有显示缩略图
本文关键字:显示 略图 包含 符号 文件夹 | 更新日期: 2023-09-27 18:06:00
你好,我在Windows Phone 8上开发了一个应用程序,它从服务器下载图像到手机,每个文件夹都是pictures
和thumbnails
显示,没有任何问题。但如果有"#"
符号的文件夹,如Fold#er
,那么文件夹内所有的图像都显示,但缩略图不显示,它是空的。
我已经调试了代码,没有问题,没有例外。即使在我测试过的服务器上,缩略图和图片也能正常工作。
知道为什么#
符号会产生这个问题吗?
谢谢
哈希值(#)是URL锚。听起来您需要对路径进行URL编码。例:Fold%23er
经过大量研究,我找到了解决方案,感谢@Blazes的建议,但这是不同的问题。在我的应用程序中,每当它发现任何特殊字符,如#,^,<,>等,它只是截断字符串,直到最糟糕的部分是它没有抛出任何错误/异常。现在我使用
string escapeStr = Uri.EscapeDataString(filepath);
这一行足以解决问题,但有时整个字符串需要转义编码
假设你有一个像 这样的字符串 string request = "Username" + uname + "Password" +Pwd + "Filepath" + filepath;
然后在本例中
string unamestr = Uri.EscapeDataString(uname);
string Pwdstr = Uri.EscapeDataString(Pwd );
没有帮助,因为您正在处理unicode字符。在这种情况下,整个字符串需要像这样编码
string request = Uri.EscapeDataString("Username" + uname + "Password" +Pwd + "Filepath" + filepath);
这是我通过试错法和SO找到的解决方案。
谢谢