`
无忧鱼
  • 浏览: 2702 次
社区版块
存档分类
最新评论

URL短编码,10位与64位的转化

    博客分类:
  • java
 
阅读更多
package com.yuxd._10to64;

public class Encode10 {
	//十进制转化为64进制
	public static String encode(long origin){
		int position=0;
		String ret="";
		String binary=Long.toBinaryString(origin);
		System.out.println(Long.parseLong(binary, 2));
		position=binary.length()-1;
		while(position>=0){
			String subString=binary.substring((position-5>0?position-5:0), position+1);
			long tempValue=Long.parseLong(subString, 2);
			ret=Character.toString(code[(int)tempValue])+ret;
			position=position-6;
		}
		return ret;
	}
	//64进制转化为10进制
	public static long decode(String origin){
		int stringPosition=0;
		Long ret=0L;
		while(stringPosition<origin.length()){
			for(int i=0;i<code.length;i++){
				if(origin.charAt(stringPosition)==code[i]){
					ret=ret+pow(64,origin.length()-stringPosition-1)*i;
				}
			}
			stringPosition+=1;
		}
		return ret;
	}
	
	//重写math中的pow方法,因为math库中是用double,容易造成问题,所以重写
	public static long pow(int x,int y){
		long result=1;
		while(y>0){
			result*=x;
			y--;
		}
		return result;
	}
	private static final char[] code={'a','b','c','d','e','f','g','h','i',
									'j','k','l','m','n','o','p','q','r',
									's','t','u','v','w','x','y','z',
									'A','B','C','D','E','F','G','H',
									'I','J','K','L','M','N','O',
									'P','Q','R','S','T','U','V',
									'W','X','Y','Z','+','-',
									'1','2','3','4','5','6','7','8','9','0'
									};
	/*
	 * 测试代码
	 * */
	public static void main(String[] args){
		System.out.println(encode(9223372031234123L));
		System.out.println(decode(encode(92233720361234123L)));
	}
	
}

分享到:
评论

相关推荐

    url编码转化,将url转化成unicode进行传输

    ### URL编码转换:将URL转换为Unicode进行传输 在互联网技术的应用中,URL(Uniform Resource Locator,统一资源定位符)编码转换是一项基本且重要的技术。本文将深入探讨URL编码转换的相关概念、应用场景以及一个...

    URL编码解码小程序

    描述中的“可以在字符(ASCII、Unicode)和URL编码之间相互转换”揭示了该程序的两个核心功能:一是将ASCII或Unicode编码的字符转化为URL编码格式,二是将URL编码的字符串还原为原始的ASCII或Unicode字符形式。...

    图片url和base64位相互转换

    图片url转base64位,base64位的数据转换成图片,附带工具类

    UrlEncodeUrlDecodeUrl解码Url编码工具

    UrlEncodeUrlDecodeUrl解码Url编码工具正是为了解决这一问题而设计的。它是一个实用的小工具,能够帮助用户对URL进行编码和解码,确保数据在通过网络传递时保持完整性和可读性。 URL(统一资源定位符)是互联网上的...

    url编码转换器

    URL编码,全称为统一资源定位符(Uniform Resource Locator)编码,是互联网上数据通信的一种标准格式,用于将可能包含特殊字符的字符串转化为网络传输时安全的格式。在HTTP协议中,URL编码扮演着至关重要的角色,...

    汉字转为HTML的URL编码

    搜集了网上的VBA函数,在excel中通过函数将汉字转为两种类型的URL编码,例如将 天空 二字转化为GB2312的“%CC%EC%BF%D5”或者是UTF-8的 “%E5%A4%A9%E7%A9%BA”。方便用于连接转换。VBA相关函数均来自网上,做了小小...

    url编码转换.rar

    URL编码,全称为统一资源定位符(Uniform Resource Locator)编码,是互联网上数据通信的一种标准格式,用于将可能包含特殊字符的字符串转化为网络传输时安全的格式。在URL编码中,非ASCII字符或者某些特殊字符会被...

    .NET短URL压缩算法

    4. **自增ID与URL编码**:另一种方法是使用自增ID来生成短码,结合URL编码(如UTF-8)将整数ID转换为可读字符串。这种方式易于管理和扩展,但可能需要更多的存储空间。 5. **URL路由**:在.NET中,短URL通常与ASP...

    Delphi【HMC-SHA签名、SHA加密、MD5加密、URL编码与解码、Base64编码与解码】

    本篇将详细讲解Delphi中涉及到的HMAC-SHA签名、SHA加密、MD5加密、URL编码与解码以及Base64编码与解码的相关知识。 首先,HMAC-SHA(Hash-based Message Authentication Code - Secure Hash Algorithm)是一种基于...

    .net auto generate url短链接

    首先,短链接的生成通常涉及两部分:URL编码和哈希算法。在.NET中,我们可以使用内置的`System.Uri`类来处理URL编码,确保链接符合URI标准。而哈希算法,如MD5或SHA家族,可以将任意长度的字符串转化为固定长度的...

    Base64编码、转换、解码代码

    Base64是一种网络上常见的数据编码方式,它将任意二进制数据转化为可打印的ASCII字符,主要用于在电子邮件系统、HTTP协议等不...在实际应用中,Base64常用于对图片、文件的URL编码,以及在XML和JSON中传输二进制数据。

    2021最新PHP短网址生成系统短链接生成系统URL缩短器系统源码.zip

    3. **URL编码与解码**:在生成短链接时,需要将哈希值转换为可读的字符集,例如使用Base62或Base36编码。在用户访问短链接时,系统需要解码这个短码并查找对应的长URL。 4. **路由与重定向**:短链接被请求时,...

    Java实现的Base64编码程序

    由于ASCII码是7位的,因此6位不足以表示一个完整的ASCII值,所以Base64使用了64个字符来作为编码集,这64个字符包括大小写字母、数字以及"+"和"/",最后还有一个特殊字符"="用于填充不足的位。 Java中实现Base64...

    易语言 base64编码转图片 如何 提高转换速度.zip

    Base64编码将每3个字节的数据(24位)转化为4个6位的Base64字符,不足3字节的数据会用零填充,并在编码结果末尾添加额外的字符。解码时则逆向进行,将这4个6位的字符还原为原始的24位数据。 在易语言中,实现Base64...

    Hex十六进制/Base64编码转换器

    Hex十六进制和Base64是两种常见的编码方式,用于将原始数据转化为特定格式,以适应不同的应用场景。 十六进制(Hexadecimal)编码是一种将二进制数据转化为人类可读的形式的方法。它基于16个符号(0-9的阿拉伯数字...

    Java基于Base64实现编码解码图片文件

    该类中有两个方法,一个是encodeImgageToBase64(URL imageUrl),用于将网络图片进行Base64位编码;另一个是encodeImgageToBase64(File imageFile),用于将本地图片进行Base64位编码。 在encodeImgageToBase64...

    加密解密工具--MD5/URL/Base64

    在互联网通信中,我们经常遇到MD5、URL编码和Base64这三种不同的加密或编码方式。接下来,我们将详细探讨这些技术及其在实际应用中的作用。 首先,MD5(Message-Digest Algorithm 5)是一种广泛使用的哈希函数,它...

    Base64编码和解码的应用(前后端程序)

    它将每3个字节(24位)的数据分为4组,每组6位,然后将这6位转化为对应的Base64字符。如果原始数据不是3的倍数,会在最后添加0来补足,用"="表示。 **前端实现Base64编码** 在JavaScript中,可以使用`btoa()`函数对...

    Url 转化工具,c#

    Url 转化工具 把中文转换成 Gb32编码 例如 测试 转:%b2%e2%ca%d4 把中文转换成 Utf8编码 例如 测试 转:%e6%b5%8b%e8%af%95 呵呵 这在传送Xml 时候有的时候用到

Global site tag (gtag.js) - Google Analytics