myEclipse的注册机 (只需要用一个类就可以生成注册码)

 

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

 

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 >= 48) && (j <= 57)) {

                                     j = (((j - 48) + 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, "5");

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

                            reader.readLine();

                   } catch (IOException ex) {

                   }

         }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值