混淆器:java程序保护如何知识产权,特别提供一个java 开发的java 源代码级的混淆器
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;
}
}
}
使用说明如下:
混淆器:java程序保护如何知识产权,特别提供一个java 开发的java 源代码级的混淆器的更多相关文章
- java程序保护如何知识产权,特别提供一个java 开发的java 源代码级的混淆器
java程序保护如何知识产权,特别提供一个java 开发的java 源代码级的混淆器 下载地址:http://yunpan.cn/QXhEcGNYLgwTD 运行方式:java -jar Encryp ...
- 微服务平台(Micro Service Platform : MSP)旨在提供一个集开发、测试、运维于一体的开发者专属平台,让开发者能快速构建或使用微服务,让开发更简单,让运维更高效。
微服务平台(Micro Service Platform : MSP)旨在提供一个集开发.测试.运维于一体的开发者专属平台,让开发者能快速构建或使用微服务,让开发更简单,让运维更高效. MSP采用业界 ...
- 今天介绍一下自己的开源项目,一款以spring cloud alibaba为核心的微服务架构项目,为给企业与个人提供一个零开发基础的微服务架构。
LaoCat-Spring-Cloud-Scaffold 一款以spring cloud alibab 为核心的微服务框架,主要目标为了提升自己的相关技术,也为了给企业与个人提供一个零开发基础的微服务 ...
- 一个C#开发编写Java框架的心路历程
前言 这一篇絮絮叨叨,逻辑不太清晰的编写Java框架的的一个过程,主要描述我作为一个java初学者,在编写Java框架时的一些心得感悟. 因为我是C#的开发者,所以,在编写Java框架时,或多或少会带 ...
- 通过反射将一个java对象的属性值转换为一个Map
将一个java对象的属性值转换为一个Map: import java.beans.BeanInfo;import java.beans.Introspector;import java.beans.P ...
- Movist for Mac(高清媒体播放器)v2.0.7中文特别版
Movist for Mac中文破解版是目前Mac平台上最好用的视频播放器,功能强大简单好用.movist mac版拥有美观简洁的用户界面,提供多种功能,支持视频解码加速高品质的字幕,全屏幕浏览,是与 ...
- 在 NetBeans 中开发一般 Java 应用程序时配置 Allatori 进行代码混淆
要在 NetBeans 中开发一般 Java 应用程序时利用 Allatori 进行代码混淆,设置比 IntelliJ IDEA 稍微简单一点,首先在 NetBeans 项目所在硬盘目录内创建一个名为 ...
- 使用 IntelliJ IDEA 开发一般 Java 应用程序时配置 Allatori 进行代码混淆
使用 IntelliJ IDEA 开发一般 Java 应用程序时通过 Allatori 进行代码混淆非常容易配置,下面总结一下本人经验,介绍一下配置方法. 首先在 IDEA 的 Module 所在硬盘 ...
- 编写高质量代码:改善Java程序的151个建议(第一章:JAVA开发中通用的方法和准则)
编写高质量代码:改善Java程序的151个建议(第一章:JAVA开发中通用的方法和准则) 目录 建议1: 不要在常量和变量中出现易混淆的字母 建议2: 莫让常量蜕变成变量 建议3: 三元操作符的类型务 ...
随机推荐
- POJ Octal Fractions(JAVA水过)
题目链接:id=1131" target="_blank">CLICK HERE~ 尽管java一下模拟水过,可是我看到别人的一段奇妙代码,贴出和大家共享. imp ...
- CString——Left、Right、Find、ReverseFind
CString--Left.Right.Find.ReverseFind http://hi.baidu.com/shawmar/item/08b30afb0f32d46f3c1485ec CStri ...
- 找唯一不出现三次而出现1次的数子O(n)位运算算法
之前两次那个是异或运算处理.这次以为也是类似.可是没想出来. 高富帅想出来了算法,转为bitset,然后加起来 同样的话 要么0+0+0 要么1+1+1,最后剩下的 能够通过%3 算出0 或1.思想是 ...
- Java NIO与IO
当学习了Java NIO和IO的API后,一个问题立即涌入脑海: 我应该何时使用IO,何时使用NIO呢?在本文中,我会尽量清晰地解析Java NIO和IO的差异.它们的使用场景,以及它们怎样影响您的代 ...
- Android内存泄漏简介
前言 不少人认为JAVA程序,因为有垃圾回收机制,应该没有内存泄露. 其实如果我们一个程序中,已经不再使用某个对象,但是因为仍然有引用指向它,垃圾回收器就无法回收它,当然该对象占用的内存就无法被使用, ...
- linux cmd
Linux查找包含特定字符串的文件名的方法 Pasted from <http://www.jbxue.com/LINUXjishu/9790.html> find .|xargs gre ...
- 一天一个类,一点也不累 之 Vector
一天一个类,一点也不累. 今天要说的是ArrayList的亲兄弟--Vector 亲兄弟?看看“族谱” Class Vector<E> java.lang.Object java.util ...
- Foundation补充
1常用结构体: NSRange.NSPoint(CGPoint).NSSize(CGSize).NSRect(CGRect) 2 NSRange: 字符串中有一个方法rangeOfString:str ...
- asp.net core 使用 Redis 和 Protobuf
asp.net core 使用 Redis 和 Protobuf 前言 上篇博文介绍了怎么样在 asp.net core 中使用中间件,以及如何自定义中间件.项目中刚好也用到了Redis,所以本篇就介 ...
- <转>一个最不可思议的MySQL死锁分析
1 死锁问题背景 1 1.1 一个不可思议的死锁 1 1.1.1 初步分析 3 1.2 如何阅读死锁日志 3 2 死锁原因深入剖析 4 2.1 Delete操作的加锁逻辑 4 2.2 死锁预防策略 5 ...