This package makes it easy to read and write java classfiles. It doesn't, however, provide any help with displaying the contents of a classfile to the user (unless you count debug output), or disassembling the bytecodes.

This code snippet will read in a classfile and write it back out to a different file.

  InputStream is = new FileInputStream("Foo.class");
    OutputStream os = new FileOutputStream("FooCopy.class");
    ClassInfo classInfo = new ClassInfo();
    new ClassFileReader().read(is, classInfo);
    classInfo.setName("FooCopy");  // Java requires the class name to match the file name
    new ClassFileWriter().write(classInfo, os);

Licence: Public Domain