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

代码提取

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

[java]view plaincopy

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为例:

[java]view plaincopy

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);

}

打出来的列表为:

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

[java]view plaincopy

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.csdn.net/harvic880925/article/details/44679239

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、URI与Uri 大家可能经常会看到在开发时,怎么有的时候是URI,有的时候是Uri,这是怎么回事? 名称如此相...
    Ten_Minutes阅读 12,520评论 4 8
  • 转载 :http://blog.csdn.net/harvic880925/article/details/446...
    ping0505阅读 3,173评论 0 1
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,716评论 19 139
  • 之前在做图像裁剪功能的时候涉及到了Uri,以及联想到ContentProvider中也使用到了Uri,对这块内容还...
    陈利健阅读 13,100评论 0 14
  • 项目里用到了许多Uri,Url,Urn相关东西,一直对其的定义模糊不清,趁迭代开发周期,对一些模糊的东西弄清楚 内...
    朴文阅读 2,701评论 0 0