java中decode字符串:

public class Utils {

private static Pattern validStandard      = Pattern.compile("%([0-9A-Fa-f]{2})");

private static Pattern choppedStandard    = Pattern.compile("%[0-9A-Fa-f]{0,1}$");

private static Pattern validNonStandard   = Pattern.compile("%u([0-9A-Fa-f][0-9A-Fa-f])([0-9A-Fa-f][0-9A-Fa-f])");

private static Pattern choppedNonStandard = Pattern.compile("%u[0-9A-Fa-f]{0,3}$");

public static String resilientUrlDecode(String input) {

String cookedInput = input;

if (cookedInput.indexOf('%') > -1) {

// Transform all existing UTF-8 standard into UTF-16 standard.

cookedInput = validStandard.matcher(cookedInput).replaceAll("%00%$1");

// Discard chopped encoded char at the end of the line (there is no way to know what it was)

cookedInput = choppedStandard.matcher(cookedInput).replaceAll("");

// Handle non standard (rejected by W3C) encoding that is used anyway by some

// See: http://stackoverflow.com/a/5408655/114196

if (cookedInput.contains("%u")) {

// Transform all existing non standard into UTF-16 standard.

cookedInput = validNonStandard.matcher(cookedInput).replaceAll("%$1%$2");

// Discard chopped encoded char at the end of the line

cookedInput = choppedNonStandard.matcher(cookedInput).replaceAll("");

}

}

try {

return URLDecoder.decode(cookedInput,"UTF-16");

} catch (UnsupportedEncodingException e) {

// Will never happen because the encoding is hardcoded

return null;

}

}

}

instring java_Decode a string in Java相关推荐

  1. [Ljava.lang.String和java.lang.String区别

    [Ljava.lang.String和java.lang.String区别 注:[Ljava.lang.String@1b634e7  --     "[" 表示一维数组      ...

  2. java string 不变_为什么String在java中是不可变的?

    什么是不可变对象? 众所周知, 在Java中, String类是不可变的.那么到底什么是不可变的对象呢? 可以这样认为:如果一个对象,在它创建完成之后,不能再改变它的状态,那么这个对象就是不可变的.不 ...

  3. java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String at java.lang.It

    错误信息: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.String at java.lan ...

  4. date java string 转换,Java Date转String

    Java Date转String 1 Java Date转String的介绍 我们可以使用java.text.DateFormat类的format() 方法在Java中将Date转换为String. ...

  5. 无法解析构造函数‘Employee(int,java.lang.String,java.lang.String,int,com.kuang.pojo.Department)‘

    前言:在写这篇博客的时候,本来博客名字打算叫:"在给Java伪造数据库里面的伪数据的相关字段插入数据时,插入失败,是什么原因导致的?",后来思前想后,还是决定直接拷贝使用编译器上面 ...

  6. string time java,【JAVA】之【string转time方法】

    第一种: package org.kodejava.example.util; import java.text.DateFormat; import java.text.SimpleDateForm ...

  7. java里面的string类型,java中的String类型(不知道理解的好不,请教大神)

    当执行String a = "abc"; 时候(前提条件是:执行这行代码之前在常量池中没有abc,若有,a直接引用在常量池中abc不在创建一个对象,若无,执行下面的描述) java ...

  8. spark java foreach_Spark Java使用DataFrame的foreach/foreachPartition

    Spark已更新至2.x,DataFrame归DataSet管了,因此API也相应统一.本文不再适用2.0.0及以上版本. DataFrame原生支持直接输出到JDBC,但如果目标表有自增字段(比如i ...

  9. java string newline,Java BufferedWriter newLine()用法及代码示例

    Java中BufferedWriter类的newLine()方法用于将下一行分隔为新行.它用作缓冲的写程序流中的写分隔符. 用法: public void newLine() throws IOExc ...

最新文章

  1. Unique Paths II
  2. 最土团购系统数据结构数据字典二次开发宝典
  3. mysql存储base64位用什么类型_了解什么是存储引擎引发的MySQL面试3连问
  4. jdbc获取一行字符串_JDBC基础
  5. bat-bat-bat (重要的事情说三遍)
  6. 完成OSS.Http底层HttpClient重构封装 支持标准库
  7. python图像分析_python分析问题步骤Python比较两个图片相似度的方法
  8. win8安装mysql出现2503_win8.1安装msi文件出现2503错误的解决方法
  9. STM32液晶显示HT1621驱动原理及程序代码
  10. Linux中使用定时任务每周定时清理45天以前日志
  11. Collider Collision 区别
  12. iOS :高德地图SDK配置教程(安装CocoaPods、生成Podfile文件、安装SDK、demo简单使用等)
  13. Flink on Zeppelin (1) - 入门篇
  14. 软件测试典型缺陷分析,软件测试缺陷分析方法简介
  15. 分类信息网站模板(ICP许可证)已通过审核-两套样式模板
  16. 基于STM32的医院呼叫系统设计
  17. mentohust for linux,GitHub - xdlinux/mentohust_xidian: A ruijie client for xidian university
  18. 【Java】认识Sring、String的常见操作和StringBuffer 和StringBuilder的区别【字符串详解】
  19. 前端vue点击切换(黑夜/白天模式)主题最新(源码)
  20. java9推迟_甲骨文宣布Java 9将会推迟到明年7月发布

热门文章

  1. html长图转换成pdf,将长 html 导入拆分 PDF
  2. 汇编学习笔记(二):转移指令
  3. 大学计算机基础水平,大学计算机基础心得.docx
  4. java 继承变量_用java中的变量继承
  5. 请描述定时器初值的计算方式_单片机C语言编程中定时器初值计算的两种方法...
  6. spring更新后 外层事务查不到_再深一点:面试工作两不误,源码级理解Spring事务...
  7. reactor模型_Reactor模式以及Netty中的应用
  8. java cxf 不使用springmvc_使用cfx与springMVC集成发布与调用webservice
  9. python函数如何实现可变参数_【已解决】Python中实现可变参数的函数
  10. Java小白零基础学习如何突破自己的方法