2013-03-27 48 views
0

您好我已经开发了Windows Phone 8中的应用程序,它将图像从服务器下载到手机,并且每个文件夹是picturesthumbnails正在显示,没有任何问题。但是如果有一个文件夹"#"Fold#er这样的符号,那么在文件夹内所有的图像都显示,但缩略图不显示,它是空的。文件夹名称包含#符号但缩略图不显示

我调试了代码,没有问题,没有例外。即使在我测试过的服务器上,它也能很好地处理缩略图和图片。

任何想法为什么是#符号创建此问题?

谢谢

回答

0

经过大量研究,我找到了解决方案,感谢@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找到了解决办法。

谢谢

1

散列(#)是一个URL锚点。这听起来像你需要URL路径编码。例如。 Fold%23er

+0

那我该如何解决呢?我应该将#改成%23吗? (如“(imgTinyThumbnail.FilePath.Contains(”#“)) { imgTinyThumbnail.FilePath.Replace((”#“,”%23“); }' – Debhere 2013-03-27 11:41:18

+0

请参阅:http://stackoverflow.com/问题/ 575440/URL编码-使用-C-尖锐 – Blazes 2013-03-27 11:42:17

相关问题