Android Url相关工具 通用类UrlUtil
1.整体分析
1.1.源代码查看,可以直接Copy。
public class UrlUtil {
public static boolean isUrlPrefix(String url) {
return url.startsWith("http://") || url.startsWith("https://");
} /**
* 判断后缀是不是图片类型的
*
* @param url url
*/
public static boolean isImageSuffix(String url) {
return url.endsWith(".png")
|| url.endsWith(".PNG")
|| url.endsWith(".jpg")
|| url.endsWith(".JPG")
|| url.endsWith(".jpeg")
|| url.endsWith(".JPEG");
} /**
* 判断后缀是不是 GIF
*
* @param url url
*/
public static boolean isGifSuffix(String url) {
return url.endsWith(".gif")
|| url.endsWith(".GIF");
} /**
* 获取后缀名
*/
public static String getSuffix(String url) {
if ((url != null) && (url.length() > 0)) {
int dot = url.lastIndexOf('.');
if ((dot > -1) && (dot < (url.length() - 1))) {
return url.substring(dot + 1);
}
}
return url;
} /**
* 获取 mimeType
*/
public static String getMimeType(String url) {
if (url.endsWith(".png") || url.endsWith(".PNG")) {
return "data:image/png;base64,";
} else if (url.endsWith(".jpg") || url.endsWith(".jpeg") || url.endsWith(".JPG") || url.endsWith(".JPEG")) {
return "data:image/jpg;base64,";
} else if (url.endsWith(".gif") || url.endsWith(".GIF")) {
return "data:image/gif;base64,";
} else {
return "";
}
} /**
* 根据 url 获取 host name
* http://www.gcssloop.com/ => www.gcssloop.com
*/
public static String getHost(String url) {
if (url == null || url.trim().equals("")) {
return "";
}
String host = "";
Pattern p = Pattern.compile("(?<=//|)((\\w)+\\.)+\\w+");
Matcher matcher = p.matcher(url);
if (matcher.find()) {
host = matcher.group();
}
return host;
}
}
1.2.主要方法
- isUrlPrefix(String url)==>判断这个链接的前缀是http或者https
- isImageSuffix(String url)==>判断这个链接后缀是不是图片类型的
- isGifSuffix(String url)==>判断这个链接的后缀是不是GIF
- getSuffix(String url)==>判断这个链接的后缀是啥
- getMimeType(String url)==>获取mimeType(资源媒体类型)
- getHost(String url)==>获取主机名,就是截取url中间关键的主机
2.局部分析
2.1.判断链接的前缀是不是http或https
这里调用了字符串的方法,很容易。
2.2.判断后缀是不是图片类型的
这里只判断了几种常用类型的图片
.PNG
.jpg
.JPG
.jpeg
.JPEG
还有一些需要的类型也可以加上去。
2.3.判断后缀是不是GIF
记得大小写都要判断。
2.4.获取后缀名
以最后一个.为基准,将后面的后缀截取出来。
2.5.获取媒体资源类型
下面这是常用的资源类型。
2.6.根据url获取host name
这里又用到正则表达式了。
作用很简单。
http://www.baidu.com/==>www.baidu.com
获取中间关键的主机名即可。
Android Url相关工具 通用类UrlUtil的更多相关文章
- Android 文件管理器通用类 FileUtil
1.整体分析 1.1.源代码如下,可以直接Copy. public class FileUtil { private FileUtil() { } //****系统文件目录************** ...
- Android 异步请求通用类
package com.example.demo1; import java.util.EventListener; public interface MyAsyncTaskListener exte ...
- Android Html处理器通用类 HtmlUtil
1.整体分析 1.1.首先看一下源代码,可以直接Copy. public class HtmlUtil { /** * 获取 html 中的纯文本 */ public static String Ht ...
- Android开发常用工具类
来源于http://www.open-open.com/lib/view/open1416535785398.html 主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前 ...
- Android常用的工具类
主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java.目前包括HttpUtils.DownloadManagerPro.ShellUtils.PackageUtils. Prefe ...
- Android常用的工具类(转)
主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java.目前包括HttpUtils.DownloadManagerPro.ShellUtils.PackageUtils.Prefer ...
- 2013最新Android常用的工具类整理
主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前包括HttpUtils.DownloadManagerPro.ShellUtils.PackageUtils. Pref ...
- 最全Android开发常用工具类
主要介绍总结的Android开发中常用的工具类,大部分同样适用于Java. 目前包括 HttpUtils.DownloadManagerPro.Safe.ijiami.ShellUtils.Pack ...
- (转载)实例详解Android快速开发工具类总结
实例详解Android快速开发工具类总结 作者:LiJinlun 字体:[增加 减小] 类型:转载 时间:2016-01-24我要评论 这篇文章主要介绍了实例详解Android快速开发工具类总结的相关 ...
随机推荐
- 诸葛io | 精细化运营分析解决方案
类型: 定制服务 软件包: business intelligence internet media solution collateral 联系服务商 产品详情 解决方案 概要 数据监测 ? 异常发 ...
- java线程详细版(未完待续)
1. Java线程:概念与原理 一.操作系统中线程和进程的概念 现在的操作系统是多任务操作系统.多线程是实现多任务的一种方式. 进程是指一个内存中运行的应用程序,每个进程都有自己独立的一块内存空间,一 ...
- SAP UI5和CRM WebUI的View和Controller是如何绑定的
UI5 例如我在UI5的界面上画一个按钮,点击之后弹出一个Alert dialog. 在XML view里只定义了controller的名称和事件处理函数的名称.那么按钮被点击之后,controlle ...
- 365. Water and Jug Problem (GCD or BFS) TBC
https://leetcode.com/problems/water-and-jug-problem/description/ -- 365 There are two methods to sol ...
- HDU 1532
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1532 题意: 三叶草是这个人的最喜欢的植物,结果下雨淹没了他家里,要排水,一个点到一个点的排水速度已知 ...
- Python 语法基础
之所以学习Python,第一个是他比较简单,寒假时间充裕,而且听说功能也很不错,最重要的是,我今年的项目就要用到它. 而且刘汝佳的书上说到,一个好的Acmer要是不会一点Python那就是太可惜了.废 ...
- AJAX(二):HTTP头部信息
每个http请求和响应都会带有相应都头部信息,其中有的对开发人员有用,有的页没有什么用默认情况下,发送xhr请求的同时,还有发送下列头部信息 Accept:浏览器能够处理的内容类型 Accept-Ch ...
- P1036 选数
题目描述 已知 nn 个整数 x_1,x_2,…,x_nx1,x2,…,xn,以及11个整数kk(k<nk<n).从nn个整数中任选kk个整数相加,可分别得到一系列的和.例如当n=4 ...
- JS中如何得到触发事件的属性?
<html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> ...
- P2375 动物园
入口 题目的大意就是输出以任意一个字符结尾,既是前缀,又是后缀,且长度不超过总长度的一半的方案书的乘积. 考虑使用kmp 在处理失配数组的同时,处理出来以每个字符结尾的时的,能有多少个前缀和后缀相同的 ...