我可以将类名和包名导出到csv文件中吗? (Java)的

时间:2012-04-02 15:32:01

标签: java architecture export

我在netBeans中有一个java项目。该软件包中有一些软件包和类。我可以将此结构导出到csv吗?

csv示例:

myPackage1,MyClass1的;

myPackage1,MyClass2;

如果我可以将构造函数或空洞中的参数放入csv中,我会更高兴。

感谢你的想法。

编辑:如果有应用程序能够对类图进行逆向工程,那么必须有一些简单的方法。

3 个答案:

答案 0 :(得分:2)

这可能听起来过于简化,但我要做的只是移动到终端中的项目文件夹并执行“树”。这将是giva寻找/替换肌动蛋白的良好开端。除此之外,我不知道怎么做这样的事情。

答案 1 :(得分:1)

只需创建一个遍历的目录漫游算法,找到.java或.class文件,并将它们添加到列表列表中(这将是您的csv文件)。如果你想添加参数,那么你可以打开类文件,使用反射来查看是否可以找到任何构造函数并根据需要添加它们。

这里试试这个:

(LOAD) 假设您的包是一个目录(它是)。你会想走的 目录查找所有嵌套的.java或.class文件和目录。你会 想要打开java文件或加载(使用ClassLoader)类文件。

现在我们必须分支我们的算法。

(。CLASS BRANCH) 如果它是一个类文件,那么您已经拥有了所需的所有方法。使用 java.reflect pacakge你反思地找到了类的构造函数。跳 创建CSV。

(。JAVA BRANCH) 但是,如果它是一个java文件,那么你会有更难的时间。你会 需要创建一个能够搜索你的解析器(或找到一个) 构造函数和您想要的所有其他数据。然后只需运行所有java文件 通过您的解析器并跳转到CREATE CSV

(创建CSV) 现在从这里开始格式化csv文件。获取您当前的目录, 巧合的是你的包名,将其粘贴到csv文件中 您想要从.CLASS BRANCH和.JAVA BRANCH

获得的所有类数据

答案 2 :(得分:1)

(你可以多说一点你的问题。真正的问题是什么?)

  1. 您可以使用反射来检查类详细信息并写入csv文件
  2. 如果您想分析源代码并使用javaparser进行快速报告。
  3. 没有反思:使用像ASM / BCEL这样的字节码引擎工具来检查.class文件并提取所需的信息。