当前位置:  开发笔记 > 编程语言 > 正文

C#中发生System.ArgumentOutOfRangeException

如何解决《C#中发生System.ArgumentOutOfRangeException》经验,为你挑选了1个好方法。

我试图从C#中的URL中提取文件的名称

我使用的代码如下:

string url = "https://something.something.something/something/filename.abc");
// the filename in this case should be filename.abc

int firstIndex = url.lastIndexOf('/');
int length = url.Length - url.lastIndexOf('/');
string filename = url.Substring(firstIndex, length);
Console.WriteLine("The name of the file is : " + filename);

但是,这将打印以下内容:文件的名称为:/filename.abc

我想得到filename.abc的文件名所以我这样做了

int firstIndex = url.lastIndexOf('/') + 1;
// All the other code remains the same, and this is when the visual studio throws this error

mscorlib.dll中发生未处理的"System.ArgumentOutOfRangeException"类型异常

我该如何解决这个问题?



1> Yahya..:
var fileName = "https://something.something.something/something/filename.abc";
var f = Path.GetFileName(fileName);

或者(通过这里)

var uri = new Uri("https://something.something.something/something/filename.abc");
var f = uri.Segments[uri.Segments.Length - 1];

推荐阅读
臭小子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有