From 75ef40dad5f2b0cb4209cd6233b02a807605b2be Mon Sep 17 00:00:00 2001 From: virusdefender Date: Mon, 4 Jul 2022 14:06:59 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=AF=E6=8C=81=E4=BB=8E=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E4=B8=AD=E8=AF=BB=E5=8F=96=20BCEL=20=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 +++--- src/Main.java | 17 +++++++++++------ 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 7ad8249..0d18db6 100644 --- a/README.md +++ b/README.md @@ -11,12 +11,12 @@ > 使用Decode功能会自动在当前目录下生成**Decoded.class**, 由于BCEL编码存在$符号,请使用***单引号***对代码进行包裹 ```shell - -Decode: +Decode from string in args: java -jar BCELCodeman.jar d [BCEL_CODE] +Decode from file path: +java -jar BCELCodeman.jar df [BCEL_Filepath] Encode: java -jar BCELCodeman.jar e [Class_Filepath] - ``` ![命令行使用示例](./screenshot/jar_example.png) diff --git a/src/Main.java b/src/Main.java index 97e378a..c03a816 100644 --- a/src/Main.java +++ b/src/Main.java @@ -12,17 +12,22 @@ public class Main { public static void main(String[] args) { String helpMsg = "---------Example---------\n" - + "Decode:\n" - + "java -jar BCELCodeman.jar d [BCEL_CODE]\n" - + "Encode:\n" - + "java -jar BCELCodeman.jar e [Class_Filepath]\n\n" - + " -=Coding By F1tz=-"; + + "Decode from string in args:\n" + + "java -jar BCELCodeman.jar d [BCEL_CODE]\n" + + "Decode from file path:\n" + + "java -jar BCELCodeman.jar df [BCEL_Filepath]\n" + + "Encode:\n" + + "java -jar BCELCodeman.jar e [Class_Filepath]\n\n" + + " -=Coding By F1tz=-"; try{ switch (args[0]){ case "d" : String bcelCode = args[1]; decode(bcelCode); break; + case "df" : + decode(new String(Files.readAllBytes(Paths.get(args[1])))); + break; case "e" : String classPath = args[1]; encode(classPath); @@ -31,8 +36,8 @@ public static void main(String[] args) { System.out.println(helpMsg); } }catch (Exception e){ + e.printStackTrace(); System.out.println(helpMsg); - return; } }