String filename = source.getName().replaceAll(".java$", ".jad");
之所以用replaceAll代替
String filename = source.getName().replace(".java", “.jad”);是由于如果真的存在a.java.java文件,那么会改变此文件的名称为a.jad.jad,而我们应该将他改为a.java.jad。
replaceAll的第一个参数的是一个正则表达式,$代表末尾的字符,所以这种修改方式只会修改后缀名。