zoukankan      html  css  js  c++  java
  • 下载地址转换工具代码

    因为我有时候下H片是迅雷的地址而我又不是迅雷会员,无法离线下载。我QQ旋风又可以离线下载,于是乎在网上搜了一下参考代码,写了一个转换器。以后下H片就不怕不怕拉。

    using System;
    using System.Collections.Generic;
    using System.Text;

    namespace DownloadConvert
    {
    public class ConvertClass
    {
    public ConvertClass()
    {

    }

    /// <summary>
    /// 下载地址转换方法
    /// </summary>
    /// <param name="ZHLX">转换类型</param>
    /// <param name="In_Address">输入地址</param>
    /// <returns></returns>
    public static string ConvertStr(string ZHLX,string In_Address)
    {
    string Out_Address = "";//存储输出地址
    int index = In_Address.Trim().ToLower().LastIndexOf("/");
    string StrTo = In_Address.ToLower();

    if(StrTo.StartsWith("thunder://"))//如果当前输入下载地址是迅雷下载地址
    {
    byte[] output = { };
    output
    = Convert.FromBase64String(In_Address.Substring(index +1));
    string str = Encoding.Default.GetString(output);
    string strSub = str.Substring(2,str.Length - 4);
    switch(ZHLX)
    {
    case "普通HTTP":
    Out_Address
    = strSub;
    break;
    case "迅雷地址":
    Out_Address
    = In_Address;
    break;
    case "旋风地址":
    byte[] byte_XF = Encoding.Default.GetBytes(strSub);
    Out_Address
    = "qqdl://" + Convert.ToBase64String(byte_XF);
    break;
    case "快车地址":
    string App = "[FLASHGET]" + strSub + "[FLASHGET]";
    byte[] byte_KC = Encoding.Default.GetBytes(App);
    Out_Address
    = "flashget://" + Convert.ToBase64String(byte_KC) + "&JiangZheng711";
    break;

    }
    }
    else if (StrTo.StartsWith("qqdl://"))
    {
    byte[] output = { };
    output
    = Convert.FromBase64String(In_Address.Substring(index + 1));
    string str = Encoding.Default.GetString(output);
    switch (ZHLX)
    {
    case "普通HTTP":
    Out_Address
    = str;
    break;
    case "迅雷地址":
    string App = "AA" + str + "ZZ";
    byte[] bytes_XL = Encoding.Default.GetBytes(App);
    Out_Address
    = "thunder://" + Convert.ToBase64String(bytes_XL);
    break;
    case "旋风地址":
    Out_Address
    = In_Address;
    break;
    case "快车地址":
    string AppStr = "[FLASHGET]" + str + "[FLASHGET]";
    byte[] byte_KC = Encoding.Default.GetBytes(AppStr);
    Out_Address
    = "flashget://" + Convert.ToBase64String(byte_KC) + "&JiangZheng711";
    break;
    }
    }
    else if (StrTo.StartsWith("flashget://"))
    {
    byte[] outputb = { };
    int FlashSpe = In_Address.Trim().IndexOf("&");
    outputb
    = Convert.FromBase64String(In_Address.Trim().Substring(index + 1, FlashSpe - "flashget://".Length));
    string str = Encoding.Default.GetString(outputb);
    int indexS = str.IndexOf("]");
    int indexE = str.LastIndexOf("[");
    string strSub = str.Substring(indexS + 1, indexE - indexS - 1);

    switch (ZHLX)
    {
    case "普通HTTP":
    Out_Address
    = strSub;
    break;
    case "迅雷地址":
    string App = "AA" + str + "ZZ";
    byte[] bytes_XL = Encoding.Default.GetBytes(App);
    Out_Address
    = "thunder://" + Convert.ToBase64String(bytes_XL);
    break;
    case "快车地址":
    Out_Address
    = In_Address;
    break;
    case "旋风地址":
    byte[] byte_XF = Encoding.Default.GetBytes(strSub);
    Out_Address
    = "qqdl://" + Convert.ToBase64String(byte_XF);
    break;
    }
    }
    else
    {
    switch (ZHLX)
    {
    case "普通HTTP":
    Out_Address
    = In_Address;
    break;
    case "迅雷地址":
    string App = "AA" + In_Address + "ZZ";
    byte[] bytes_XL = Encoding.Default.GetBytes(App);
    Out_Address
    = "thunder://" + Convert.ToBase64String(bytes_XL);
    break;
    case "快车地址":
    string AppS = "[FLASHGET]" + In_Address + "[FLASHGET]";
    byte[] byte_KC = Encoding.Default.GetBytes(AppS);
    Out_Address
    = "flashget://" + Convert.ToBase64String(byte_KC) + "&JiangZheng711";
    break;
    case "旋风地址":
    byte[] byte_XF = Encoding.Default.GetBytes(In_Address);
    Out_Address
    = "qqdl://" + Convert.ToBase64String(byte_XF);
    break;
    }
    }
    return Out_Address;
    }
    }
    }

    点击下载源代码

  • 相关阅读:
    Shell脚本:使用rsync备份文件/目录
    如何在 CentOS 中设置 NTP 服务器
    NGINX引入线程池 性能提升9倍
    如何在Quagga BGP路由器中设置IPv6的BGP对等体和过滤
    如何使用Weave以及Docker搭建Nginx反向代理/负载均衡服务器
    在 Ubuntu 上配置高性能的 HHVM 环境
    在 Linux 中怎样将 MySQL 迁移到 MariaDB 上
    如何删除 Ubuntu 上不再使用的旧内核
    如何在 Arch Linux 中安装 DNSCrypt 和 Unbound
    在 CentOS 7 中安装并使用自动化工具 Ansible
  • 原文地址:https://www.cnblogs.com/junjie94wan/p/2127995.html
Copyright © 2011-2022 走看看