package com.basic.security.utils; import org.apache.commons.io.IOUtils; import java.io.File; import java.io.FileInputStream; import java.io.FileWriter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class FreemarkerUtil { public static void main(String[] args) { try { File[] files = new File("C:\\workspace\\gcms_web_modify_django_erlang\\src1\\src\\com\\zhuoju\\www\\sys\\entity").listFiles(); Map packageToPathMap = new HashMap(); packageToPathMap.put("com.basic.security.model", "C:\\workspace\\Security\\app\\src\\main\\java\\com\\basic\\security\\model\\"); packageToPathMap.put("com.basic.security.manager.impl.sqlite", "C:\\workspace\\Security\\app\\src\\main\\java\\com\\basic\\security\\manager\\impl\\sqlite\\"); packageToPathMap.put("com.basic.security.manager.impl.erlang.test", "C:\\workspace\\Security\\app\\src\\test\\java\\com\\basic\\security\\manager\\impl\\sqlite\\test\\"); packageToPathMap.put("", ""); packageToPathMap.put("", ""); for (File file : files) { List classBody = new ArrayList(); List> classes = new ArrayList(); classes.add(classBody); System.out.println(file.getName()); if (file.getName().endsWith("Dao.xml")) { List lines = IOUtils.readLines(new FileInputStream(file)); for (String line : lines) { if (line.startsWith("package ")) { classBody = new ArrayList(); classes.add(classBody); } classBody.add(line); } for (List clazz : classes) { String packageName = ""; String className = ""; for (String line : clazz) { if (line.startsWith("package ")) { packageName = line.replace("package ", "").trim().replace(";", ""); } if (line.startsWith("public class ")) { className = line.replace("public class ", "").split(" ")[0]; } } if (!"".equals(className) && !"".equals(packageName)) { FileWriter fw = new FileWriter( packageToPathMap.get(packageName) + className + ".java"); IOUtils.writeLines(clazz, "\r\n", fw); fw.flush(); fw.close(); System.out.println("className=" + className + ",packageName=" + packageName); } } } // System.out.println(classes); } } catch (Exception e) { e.printStackTrace(); } } }