MyEclipse自动生成注册码的java类

将以下内容复制Eclipse中运行,随意输入一个用户名,程序会自动计算出注册码,绝对能用!!!


 package sun;  

import java.io.*;     

    

public class MyEclipseGen {     

    private static final String LL = "Decompiling this copyrighted software is a violation of both your license agreement and the Digital Millenium Copyright Act of 1998 (http://www.loc.gov/copyright/legislation/dmca.pdf ). Under section 1204 of the DMCA, penalties range up to a $500,000 fine or up to five years imprisonment for a first offense. Think about it; pay for a license, avoid prosecution, and feel better about yourself.";     

    public String getSerial(String userId, String licenseNum) {     

        java.util.Calendar cal = java.util.Calendar.getInstance();     

        cal.add(1, 3);     

        cal.add(6, -1);     

        java.text.NumberFormat nf = new java.text.DecimalFormat("000");     

        licenseNum = nf.format(Integer.valueOf(licenseNum));     

        String verTime = new StringBuilder("-").append(new java.text.     

                SimpleDateFormat("yyMMdd").format(cal.getTime())).append("0").     

                         toString();     

        String type = "YE3MP-";     

        String need = new StringBuilder(userId.substring(0, 1)).append(type).     

                      append("300").append(licenseNum).append(verTime).toString();     

        String dx = new StringBuilder(need).append(LL).append(userId).toString();     

        int suf = this.decode(dx);     

        String code = new StringBuilder(need).append(String.valueOf(suf)).     

                      toString();     

        return this.change(code);     

    }     

    

    private int decode(String s) {     

        int i;     

        char[] ac;     

        int j;     

        int k;     

        i = 0;     

        ac = s.toCharArray();     

        j = 0;     

        k = ac.length;     

        while (j < k) {     

            i = (31 * i) + ac[j];     

            j++;     

        }     

        return Math.abs(i);     

    }     

    

    private String change(String s) {     

        byte[] abyte0;     

        char[] ac;     

        int i;     

        int k;     

        int j;     

        abyte0 = s.getBytes();     

        ac = new char[s.length()];     

        i = 0;     

        k = abyte0.length;     

        while (i < k) {     

            j = abyte0[i];     

            if ((j >= 4 && (j <= 57)) {     

                j = (((j - 4 + 5) % 10) + 48;     

            } else if ((j >= 65) && (j <= 90)) {     

                j = (((j - 65) + 13) % 26) + 65;     

            } else if ((j >= 97) && (j <= 122)) {     

                j = (((j - 97) + 13) % 26) + 97;     

            }     

            ac[i] = (char) j;     

            i++;     

        }     

        return String.valueOf(ac);     

    }     

    

    public MyEclipseGen() {     

        super();     

    }     

    

    public static void main(String[] args) {     

        try {     

            System.out.println("please input register name:");     

            BufferedReader reader = new BufferedReader(new InputStreamReader(     

                    System.in));     

            String userId = null;     

            userId = reader.readLine();     

            MyEclipseGen myeclipsegen = new MyEclipseGen();     

            String res = myeclipsegen.getSerial(userId, "20");     

            System.out.println("Serial:" + res);     

            reader.readLine();     

        } catch (IOException ex) {     

        }     

    }     

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值