我有一个SPListItem,我返回一个完整的图片网址:
http://sharepointsite.com/images/bob's picture.jpg
我通过调用它来返回此URL:
splistitem.File.ServerRelativeUrl
我希望能够将此网址转换为:
http://sharepointsite.com/images/bob%27s%20picture.jpg
但如果我对完整的URL进行编码,它将替换我不想要的/
。我希望能够获得结束图像文件和UrlEncode,我将如何以预测方式解决这个问题?
答案 0 :(得分:4)
试试这个:
var url = "http://sharepointsite.com/images/bob's picture.jpg";
var basePath = System.IO.Path.GetDirectoryName(url);
var fileName = System.IO.Path.GetFileName(url);
var finalPath = basePath + "\\" + Uri.EscapeDataString(fileName);
答案 1 :(得分:0)
你可以通过简单地调用splistitem.File[SPBuiltInFieldId.EncodedAbsUrl]
来实现这一点 - 它不会取代正斜杠。如果您只想要文件名,则可以将其传递给System.IO.Path.GetFileName
。
顺便说一下,ServerRelativeUrl不应该返回/ images / bob的picture.jpg吗?