java uri getpath_Uri详解之——Uri结构与代码提取

本文详细介绍了如何在Java中使用Uri类提取Uri的各部分,如scheme、authority、path、query和fragment。通过getScheme(), getAuthority(), getPath(), getQuery(), getFragment()等方法,以及getPathSegments()和getQueryParameter(String key)来获取特定部分的值。示例代码展示了如何从Uri字符串中获取这些信息。" 122423574,11519491,图嵌入在兵棋联合作战态势实体知识表示学习的应用,"['知识图谱', '人工智能', '机器学习', '图神经网络', '军事应用']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码提取

上面我们通过实例讲解了肉眼识别Uri更部分的方式,但在代码中又要怎样提取呢。下面就看看Uri中提取各部分的接口,依然以上面的Uri字符串为例:

http://www.java2s.com:8080/yourpath/fileName.htm?stove=10&path=32&id=4#harvic

getScheme() :获取Uri中的scheme字符串部分,在这里即,http

getSchemeSpecificPart():获取Uri中的scheme-specific-part:部分,这里是://www.java2s.com:8080/yourpath/fileName.htm?

getFragment():获取Uri中的Fragment部分,即harvic

getAuthority():获取Uri中Authority部分,即www.java2s.com:8080

getPath():获取Uri中path部分,即/yourpath/fileName.htm

getQuery():获取Uri中的query部分,即stove=10&path=32&id=4

getHost():获取Authority中的Host字符串,即www.java2s.com

getPost():获取Authority中的Port字符串,即8080

另外还有两个常用的:getPathSegments()、getQueryParameter(String key)

List< String> getPathSegments():上面我们的getPath()是把path部分整个获取下来:/yourpath/fileName.htm,getPathSegments()的作用就是依次提取出Path的各个部分的字符串,以字符串数组的形式输出。以上面的Uri为例:

String mUriStr ="http://www.java2s.com:8080/yourpath/fileName.htm?stove=10&path=32&id=4#harvic";

Uri mUri = Uri.parse(mUriStr);

List pathSegList = mUri.getPathSegments();

for(String pathItem:pathSegList){

Log.d("qijian","pathSegItem:"+pathItem);

}

打出来的列表为:

1c9d893d665c

getQueryParameter(String key):在上面我们通过getQuery()获取整个query字段:stove=10&path=32&id=4,getQueryParameter(String key)作用就是通过传进去path中某个Key的字符串,返回他对应的值。

String mUriStr ="http://www.java2s.com:8080/yourpath/fileName.htm?stove=10&path=32&id#harvic";

mUri = Uri.parse(mUriStr);

Log.d(tag,"getQueryParameter(\"stove\"):"+mUri.getQueryParameter("stove"));

Log.d(tag,"getQueryParameter(\"id\"):"+mUri.getQueryParameter("id"));

网址:http://blog.youkuaiyun.com/harvic880925/article/details/44679239

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值