从C#中的URI字符串获取文件名

我有这种方法可以从字符串URI中获取文件名。我该怎么做才能使其更坚固?

private string GetFileName(string hrefLink)

{

string[] parts = hrefLink.Split('/');

string fileName = "";

if (parts.Length > 0)

fileName = parts[parts.Length - 1];

else

fileName = hrefLink;

return fileName;

}

回答:

您可以只创建一个System.Uri对象,并使用IsFile验证它是一个文件,然后使用Uri.LocalPath提取文件名。

这更加安全,因为它还为您提供了一种检查URI有效性的方法。


编辑以回应评论:

要获取完整的文件名,我将使用:

Uri uri = new Uri(hreflink);

if (uri.IsFile) {

string filename = System.IO.Path.GetFileName(uri.LocalPath);

}

这将为您执行所有错误检查,并且与平台无关。所有特殊情况都会为您快速轻松地处理。

以上是 从C#中的URI字符串获取文件名 的全部内容, 来源链接: utcz.com/qa/424672.html

回到顶部