me.j360.dubbo.modules.util.text.EncodeUtil.java Source code

Java tutorial

Introduction

Here is the source code for me.j360.dubbo.modules.util.text.EncodeUtil.java

Source

/*******************************************************************************
 * Copyright (c) 2005, 2014 springside.github.io
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 *******************************************************************************/
package me.j360.dubbo.modules.util.text;

import com.google.common.io.BaseEncoding;

/**
 * hex/base64 ??Guava, ?Commmon Codec?
 */
public class EncodeUtil {

    /**
     * Hex?, byte[]?StringABCDEF?.
     */
    public static String encodeHex(byte[] input) {
        return BaseEncoding.base16().encode(input);
    }

    /**
     * Hex?, String?byte[].
     * 
     * IllegalArgumentException.
     */
    public static byte[] decodeHex(CharSequence input) {
        return BaseEncoding.base16().decode(input);
    }

    /**
     * Base64?.
     */
    public static String encodeBase64(byte[] input) {
        return BaseEncoding.base64().encode(input);
    }

    /**
     * Base64?.
     * 
     * ??IllegalArgumentException
     */
    public static byte[] decodeBase64(CharSequence input) {
        return BaseEncoding.base64().decode(input);
    }

    /**
     * Base64?, URL.(Base64URL?'+''/''-''_', ?RFC3548).
     */
    public static String encodeBase64UrlSafe(byte[] input) {
        return BaseEncoding.base64Url().encode(input);
    }

    /**
     * Base64?, URL(Base64URL?'+''/''-''_', ?RFC3548).
     * 
     * ??IllegalArgumentException
     */
    public static byte[] decodeBase64UrlSafe(CharSequence input) {
        return BaseEncoding.base64Url().decode(input);
    }
}