java程序保护如何知识产权,特别提供一个java 开发的java 源代码级的混淆器
下载地址:http://yunpan.cn/QXhEcGNYLgwTD
运行方式:java -jar Encrypt.jar
运行效果:
代码混淆后的效果:
package o0OOo00.o0Oo0O0;
import java.awt.Component;
import java.io.File;
import java.io.PrintStream;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.filechooser.FileFilter;
public class o00OoOOooo
{
public static final int OoO0o = 0;
public static final int Oo0oo = 1;
public static String oOoOOOo0OOO0(Component O00ooOoOo, String oOOOoo00, int O0OoOoO, String[] o00ooo00o, String[] OOo00o00o0Oooo)
{
JFileChooser OO0o0OO0o0 = new JFileChooser();
OO0o0OO0o0.setDialogType(O0OoOoO);
OO0o0OO0o0.setDialogTitle(oOOOoo00);
String OOO0oo = "";
String oo0oooo = "";
int o00OO0 = Math.min(o00ooo00o.length, OOo00o00o0Oooo.length);
oOo0oo000ooOo00o0O0 OooOOooooo0O = null;
for (int o00O = 0; o00O < o00OO0; o00O++)
{
if ((o00ooo00o[o00O] == null) || (o00ooo00o[o00O].length() <= 0) || (OOo00o00o0Oooo[o00O] == null) || (OOo00o00o0Oooo[o00O].length() <= 0)) {
continue;
}
if (o00O == 0)
{
OooOOooooo0O = new oOo0oo000ooOo00o0O0(o00ooo00o[o00O], OOo00o00o0Oooo[o00O]);
OO0o0OO0o0.addChoosableFileFilter(OooOOooooo0O);
}
else
{
OO0o0OO0o0.addChoosableFileFilter(new oOo0oo000ooOo00o0O0(o00ooo00o[o00O], OOo00o00o0Oooo[o00O]));
}
}
if (OooOOooooo0O != null)
{
OO0o0OO0o0.setFileFilter(OooOOooooo0O);
}
int OoO0ooOo = OO0o0OO0o0.showDialog(O00ooOoOo, null);
File o00Ooo0 = OO0o0OO0o0.getSelectedFile();
String O0OOOooo00O = null;
if ((o00Ooo0 != null) && (OoO0ooOo == 0))
{
O0OOOooo00O = o00Ooo0.getPath();
if (O0OoOoO == 1)
{
FileFilter O0O0O0o0OoO00 = OO0o0OO0o0.getFileFilter();
if ((O0O0O0o0OoO00 instanceof oOo0oo000ooOo00o0O0))
{
String ooO00o0 = ((oOo0oo000ooOo00o0O0)O0O0O0o0OoO00).oo0O00O;
if (O0OOOooo00O.indexOf(".") < 0)
{
O0OOOooo00O = O0OOOooo00O + "." + ooO00o0;
}
}
}
}
return O0OOOooo00O;
}
public static String O000o0OO0Oo0(Component oo00o0)
{
String[] OOO0oo = { "enc" };
String[] oo0oooo = { "ENC文件 (*.enc)" };
String OO0O = oOoOOOo0OOO0(oo00o0, "打开", 0, OOO0oo, oo0oooo);
return OO0O;
}
public static String oOooO0000oOo(Component oo00o0)
{
String[] OOO0oo = { "enc" };
String[] oo0oooo = { "ENC文件 (*.enc)" };
String OO0O = oOoOOOo0OOO0(oo00o0, "保存", 1, OOO0oo, oo0oooo);
return OO0O;
}
public static String oO00oo00oOoO0OO00(Component oo00o0)
{
String[] OOO0oo = { "jpg", "png", "bmp", "tiff" };
String[] oo0oooo = { "JPEG文件交换格式 (*.jpg)", "PNG可移植式网络图像格式 (*.png)", "与装置无关的位图格式 (*.bmp)", "TIFF格式 (*.tiff)" };
String OO0O = oOoOOOo0OOO0(oo00o0, "保存为图片", 1, OOO0oo, oo0oooo);
return OO0O;
}
public static void main(String[] ooO0) {
JFrame O0oo = new JFrame();
String OO0O = oO00oo00oOoO0OO00(O0oo);
System.out.println("s=" + OO0O);
}
public static class oOo0oo000ooOo00o0O0 extends FileFilter
{
private String oo0O00O;
private String oO00o;
public oOo0oo000ooOo00o0O0(String oo0O00O, String oo0oooo)
{
this.oo0O00O = oo0O00O;
this.oO00o = oo0oooo;
}
public String oOOooo0o0(File O0oo) {
String OO0O = O0oo.getPath(); String tempSuffix = null;
int o00O = OO0O.lastIndexOf('.');
if ((o00O > 0) && (o00O < OO0O.length() - 1)) {
tempSuffix = OO0O.substring(o00O + 1).toLowerCase();
}
return tempSuffix;
}
public boolean accept(File O0oo) {
boolean o000OO0oo = O0oo.isDirectory();
if (!o000OO0oo)
{
String o0OoOOoOOOo0O = oOOooo0o0(O0oo);
if (o0OoOOoOOOo0O != null)
{
o000OO0oo = o0OoOOoOOOo0O.equals(this.oo0O00O);
}
}
return o000OO0oo;
}
public String getDescription() {
return this.oO00o;
}
}
}
使用说明如下: