这是张老师第47个视频的前一部分内容
首先我们定义一个类ClassLoaderAttachment
在工程下面建了itcastlib文件夹。- import java.sql.Date;
- public class ClassLoaderAttachment extends Date
- {
- public ClassLoaderAttachment(long l)
- {
- super( l);
- }
- public String toString()
- {
- return "hello,itcast";
- }
- }
复制代码 然后用下面代码将上一个类的.class 文件进行加密- import java.io.FileInputStream;
- import java.io.FileOutputStream;
- import java.io.IOException;
- import java.io.InputStream;
- import java.io.OutputStream;
- public class MyClassLoader
- {
- public static void main(String[] args) throws Exception
- {
- String srcPath =args[0];
- String destDir = args[1];
-
- FileInputStream fis = new FileInputStream(srcPath);
-
- String destFileName = srcPath.substring(srcPath.lastIndexOf('\\')+1);
- String destPath = destDir + "\\" + destFileName;
-
- FileOutputStream fos = new FileOutputStream(destPath);
-
- cypher(fis,fos);
-
- fis.close();
- fos.close();
- System.out.println(new ClassLoaderAttachment(100).toString());
-
-
- }
- private static void cypher(InputStream ips ,OutputStream ops)
- throws IOException
- {
- System.out.println("dfdfd");
- int b = -1;
- while((b=ips.read())!=-1)
- {
- ops.write(b^0xff);
- System.out.println("xxx");
- }
- }
- }
复制代码 运行上面的程序使args[0]=D:\ProgramFiles\E_Workspace\Javaenhance\bin\cn\itcast\day2\ClassLoaderAttachment.class
args[1] = itcastlib
程序运行都正常连测试的输出 都打印了。
但是唯独itcastlib文件夹下什么都没有!!!!!!我要的那个加密后的.class文件没有
大帮帮忙!!
|