В настоящий момент нет официального способа сделать это, но вы можете использовать небольшой трюк, чтобы достичь этого! Помните, что это экспериментально, и у него есть некоторые ограничения ... (проверьте эту ссылку , если вы беспокоитесь о совместимости с навигатором)
Что вы можете сделать, это использовать селектор CSS3: псевдо classe nth-child()
#list>* {
display: inline-block;
padding: 20px 28px;
margin-right: 5px;
border: 1px solid #bbb;
background: #ddd;
color: #444;
margin: 0.4em 0;
}
#list :nth-child(-n+4) {
color: #600b90;
border: 1px dashed red;
background: orange;
}
The oranges elements are the previous sibling li selected using li:nth-child(-n+4)
1
2
3
4
5
6
7
8
9
Вы можете просто создать объект System.Uri и использовать IsFile для проверки, что это файл, а затем Uri.LocalPath для извлечения имени файла.
Это намного безопаснее, так как это дает вам возможность проверить правильность URI.
Изменить в ответ на комментарий:
Чтобы получить только полное имя файла, я бы использовал:
Uri uri = new Uri(hreflink);
if (uri.IsFile) {
string filename = System.IO.Path.GetFileName(uri.LocalPath);
}
Это выполняет за вас всю проверку ошибок и не зависит от платформы. Все особые случаи решаются за вас быстро и легко.
Простой и прямой:
Uri uri = new Uri(documentAttachment.DocumentAttachment.PreSignedUrl);
fileName = Path.GetFileName(uri.LocalPath);
using System.IO;
private String GetFileName(String hrefLink)
{
return Path.GetFileName(hrefLink.Replace("/", "\\"));
}
Это предполагает, конечно, что вы разобрали имя файла.
РЕДАКТИРОВАТЬ # 2:
using System.IO;
private String GetFileName(String hrefLink)
{
return Path.GetFileName(Uri.UnescapeDataString(hrefLink).Replace("/", "\\"));
}
Это должно обрабатывать пробелы и тому подобное в имени файла.