首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何获取URI的最后一个路径段

如何获取URI的最后一个路径段
EN

Stack Overflow用户
提问于 2010-10-29 16:05:27
回答 10查看 150.6K关注 0票数 126

我输入了一个字符串,它是一个URI。如何获得最后一个路径段(在我的例子中是一个id)?

这是我的输入URL:

代码语言:javascript
复制
String uri = "http://base_path/some_segment/id"

并且我必须获得我尝试过的id:

代码语言:javascript
复制
String strId = "http://base_path/some_segment/id";
strId = strId.replace(path);
strId = strId.replaceAll("/", "");
Integer id =  new Integer(strId);
return id.intValue();

但它不起作用,肯定有更好的方法来做到这一点。

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2010-10-29 16:11:03

这就是你要找的吗:

代码语言:javascript
复制
URI uri = new URI("http://example.com/foo/bar/42?param=true");
String path = uri.getPath();
String idStr = path.substring(path.lastIndexOf('/') + 1);
int id = Integer.parseInt(idStr);

另一个选择

代码语言:javascript
复制
URI uri = new URI("http://example.com/foo/bar/42?param=true");
String[] segments = uri.getPath().split("/");
String idStr = segments[segments.length-1];
int id = Integer.parseInt(idStr);
票数 197
EN

Stack Overflow用户

发布于 2015-02-19 20:30:02

代码语言:javascript
复制
import android.net.Uri;
Uri uri = Uri.parse("http://example.com/foo/bar/42?param=true");
String token = uri.getLastPathSegment();
票数 75
EN

Stack Overflow用户

发布于 2015-05-07 04:39:11

我知道这很陈旧,但这里的解决方案似乎相当冗长。如果您有URLURI,只需要一个易于阅读的一行程序

代码语言:javascript
复制
String filename = new File(url.getPath()).getName();

或者如果你有一台String

代码语言:javascript
复制
String filename = new File(new URL(url).getPath()).getName();
票数 26
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4050087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档