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快速开发工具类总结的相关 ...
随机推荐
- C++ Knowledge series Template & Class
Function Function is composed of name, parameter (operand, type of operand), return value, body with ...
- python+selenium第一个脚本
#coding=utf-8from selenium import webdriverfrom selenium.webdriver.common.keys import Keysimport tim ...
- 视频会议20方100点 v2.66.1.18
平台: Windows 类型: 虚拟机镜像 软件包: 视频会议服务器( Video Conference Server ) 20-party video conference business int ...
- php的yii框架开发总结4
用户验证的实现:/protected/components/UserIdentity.php 修改:function authenticate()函数中的语句 public function auth ...
- SINAMICS S120屏蔽报警
通用的报警屏蔽方法: P2118 = 需要屏蔽的报警号 P2119 = 屏蔽的方式
- 初学React:组件的样式
React中组件的样式有三种: <!DOCTYPE html> <html lang="en"> <head> <meta charset ...
- CRUD全栈式编程架构之更精简的设计
精简的程度 ViewModel精简 服务精简 控制器精简 Index.cshmtl精简 AddOrEdit.cshtml精简 效果:最精简的情况下,只需要写Entity这一个数据库实体然后加上一些简单 ...
- IOS Post请求(请求服务器)
@interface HMViewController () @property (weak, nonatomic) IBOutlet UITextField *usernameField; @pro ...
- VERITA Netbackup日常巡检详细说明
VERITA备份日常监控 一. 相关检查方法.命令 1.1 启动NBU的图形管理界面: /usr/openv/netbackup/bin/jnbSA & 1.2字符界面命令: 1.2.1cat ...
- 计算1到n的n次方之和
实现效果: 知识运用: Math类的Pow方法:返回指定数字的指定次幂 public static double Pow(double x,double y) 实现代码: public string ...