/// <summary>
/// 短网址应用 ,例如QQ微博的url.cn http://url.cn/2hytQx
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
public static string[] ShortUrl(string url)
{
//可以自定义生成MD5加密字符传前的混合KEY
string key = "fooo_2016";
//要使用生成URL的字符
string[] chars = new string[]{
"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"
}; //对传入网址进行MD5加密
string hex = System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(key + url, "md5");
string[] resUrl = new string[];
for (int i = ; i < ; i++)
{
//把加密字符按照8位一组16进制与0x3FFFFFFF进行位与运算
int hexint = 0x3FFFFFFF & Convert.ToInt32("0x" + hex.Substring(i * , ), );
string outChars = string.Empty;
for (int j = ; j < ; j++)
{
//把得到的值与0x0000003D进行位与运算,取得字符数组chars索引
int index = 0x0000003D & hexint;
//把取得的字符相加
outChars += chars[index];
//每次循环按位右移5位
hexint = hexint >> ;
}
//把字符串存入对应索引的输出数组
resUrl[i] = outChars;
}
return resUrl;
}
protected void Button1_Click(object sender, EventArgs e)
{
string[] Shor = ShortUrl(this.TextBox1.Text); // Response.Write( ); //得到值fAVfui
//ShortUrl(http://www.jb51.net)[1]; //得到值3ayQry
//ShortUrl(http://www.jb51.net)[2]; //得到值UZzyUr
//ShortUrl(http://www.jb51.net)[3]; //得到值36rQZn for (int i = ; i < Shor.Length; i++)
{
Response.Write("<br/>" + i + ">>" + Shor[i]);
}
}

C#:生成短网址的更多相关文章

  1. php生成短网址的思路与方法

    生成短网址的思路以及使用php生成短网址的实现方法. 生成短网址的思路:如果把短网址还原了,你知道是个什么样子的吗?比如:http://www.jbxue.com/sitejs-17300-1.htm ...

  2. PHP调用百度api生成短网址&根据短网址恢复长网址

    接口api文档地址:http://dwz.cn/#/apidoc?_k=i9ev5p 代码demo header("Content-type: text/html; charset=utf- ...

  3. php 生成短网址 代码

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8&quo ...

  4. 仿微博php生成短网址

    html code <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  5. php 两种短网址生成方法

    使用以下PHP代码可以生成唯一的6位的短网址. 代码如下: <?php //生成短网址方法1 function shortUrl1($url) { if (empty($url)) { retu ...

  6. 短网址url接口api,url短链接(t.cn、url.cn)生成

    简要说明 短网址api接口有很多格式,不同的接口生成的短网址格式也不同,比如常见的t.cn.url.cn.w.url.cn等格式.总而言之短网址接口就是用来将一个冗长的链接缩短成10个字符以内的短链接 ...

  7. 短网址(t.cn、url.cn)生成,网址缩短接口API

    简要说明 短网址api接口有很多格式,不同的接口生成的短网址格式也不同,比如常见的t.cn.url.cn.w.url.cn等格式.总而言之短网址接口就是用来将一个冗长的链接缩短成10个字符以内的短链接 ...

  8. mongodb:短网址项目

    短网址项目概述 1.短网址项目,是将给定的长网址,转换成短网址. 如 新浪 http://t.cn/zQd5NPw ,其中zQd5NPw就是短网址 前段页面如下

  9. C#如何实现url短地址?C#短网址压缩算法与短网址原理入门

    c# url短地址压缩算法与短网址原理的例子,详细介绍了短网址的映射算法,将长网址md5生成32位签名串,分为4段,每段8个字节,然后生成短网址,具体见文本实例. 短网址映射算法: 将长网址md5生成 ...

随机推荐

  1. Linux命令全称

    知其表亦需知其意 apt = Advanced Packaging Tool ar = archiver as = assembler awk = "Aho Weiberger and Ke ...

  2. a* products

    Experience of black-box testing on set-top-boxes/IP-connected devices, games consoles and tablets ht ...

  3. ThinkPHP_SQL(1)查询语言

    推荐使用索引数组或者对象来作为查询条件,因为会更加安全. 一.使用字符串作为查询条件 这是最传统的方式,但是安全性不高,例如: $User = M("User"); // 实例化U ...

  4. Cruehead.1

    查壳   没有 我拖 alt+F9 到上面        入口处   下断 关键跳      略过   就没了 要实现 强暴  直接过... 仔细来看看... 那两个调用   都下断   看看  判断 ...

  5. autolayout sizeclass 资料集锦

    http://www.raywenderlich.com/20881/beginning-auto-layout-part-1-of-2 Core Animation Programming Guid ...

  6. Excel顺序生成序号,不能有数字4出现

    A1填写:1 A2填写:=--SUBSTITUTE(A1+1,4,5) 然后下拉A3之后的单元格 需求应用场合:生成员工序号忌讳出现4的.

  7. BZOJ3669 (动态树)

    Problem 魔法森林 (NOI2014) 题目大意 给n个点,m条边的无向图,每条边有两个权值a,b. 求一条从1-->n的路径,使得这条路径上max(a)+max(b)最小.输出最小值即可 ...

  8. OpenStack虚拟机DHCP获取不到IP地址排查

    版本:OpenStack Liberty Neutron DVR 现象: 1.在虚拟机内部不停地dhclient 2.在虚拟机所属的计算节点的物理网卡上抓包,发现该虚拟机发出的dhcp广播包 3.在虚 ...

  9. 一个assert的写法

    ]; int assert_buf_len; #ifdef XXX_DEBUG #define assert(expr, ...) \ do{ \ if ((!(expr))) \ {\ char * ...

  10. PAT (Advanced Level) Practise:1002. A+B for Polynomials

    [题目链接] This time, you are supposed to find A+B where A and B are two polynomials. Input Each input f ...