如何创建一个新的.txt文件,其中包含调用该方法的类的名称?

时间:2015-11-10 06:45:32

标签: java file class

我是编程新手,所以让我们看看我是否可以解释得这么好。

我正在制作一个Java包。在其中一个类中,有一个创建文件的方法。我把它设置为“file.txt”的那个文件的名称,但我想改变它。

假设有一个用户正在处理一个新项目并导入了库package(我正在处理的那个库)。我希望创建的文件采用用户正在处理的类的名称。例如,如果用户在名为Main的类中调用它,我希望将文件称为main.txtMain.txt

如果这个不够清楚请告诉我,我会尽力解释一下。

由于

编辑: getClass().getSimpleName()与我想要的完全不同。该方法位于名为library的库中,该类名为Main.class,但正由导入库library的用户使用,并且正在处理名为{{1}的类我希望文本文件被调用SuperMario.class而不是SuperMario.txt应用于我的方法,文件将被称为getClass().getSimpleName(),因为这是该方法所在类的名称。不幸的是我也不能将名称作为参数传递。谁能想到解决这个问题的方法呢?

编辑:我设法让程序按照我想要的方式行事,我发布了我的回答。感谢所有评论。

2 个答案:

答案 0 :(得分:0)

您可以使用getClass().getSimpleName(),这将为您提供Java中的类名

答案 1 :(得分:0)

我解决了,但是谢谢大家的建议。 我最终使用了Thread.currentThread().getStackTrace()[2].getClassName()

String name = Thread.currentThread().getStackTrace()[2].getClassName();
File file = new File(name + ".txt");

我希望这有助于其他人。