2012-04-11 84 views
-2

我想做一个测试,在我的Java项目中读取.java文件并将其转换为String。我如何在JUnit测试中执行此操作(无命令行参数)?阅读Java中的.java文件

+2

'解析'并不意味着你的想法。这意味着将文件转换为Java字节码或AST。你有什么尝试,你有什么问题? – Corbin 2012-04-11 18:54:04

+0

出于好奇,为什么你想让你的JUnit测试直接解析一个java文件? – 2012-04-11 18:57:10

+0

我不确定.java文件的类路径。 – sworded 2012-04-11 19:14:59

回答

0

检索到的当前工作目录,并从导航那里的java文件。

String curDir = System.getProperty("user.dir"); 
-1

从Java Commons IO中,请参阅FileUtils类。

+0

例如:com.abc.MyClass.java 如何获取此类的文件? 所有FileUtil方法都在文件上运行。 – sworded 2012-04-11 18:59:01

+0

新文件(路径名为文件) – bmargulies 2012-04-11 22:02:58

1

您可以在已知位置放置java文件并使用File绝对/相对路径来访问文件

或者使用getClass().getResourceAsStream()来访问它based on classpath

+0

例如: com.abc.MyClass.java 我会传入getResourceAsStream()什么? – sworded 2012-04-11 18:58:33

+0

如果可以从类路径访问com,那么假设它是com/abc /文件夹层次结构,则应该能够以'getResourceAsStream(“/ com/abc/MyClass.java”)'的形式访问它。如果它实际上命名为com.abc.MyClass.java,请使用'getResourceAsStream(“/ com.abc.MyClass.java”)' – Attila 2012-04-11 19:05:04

+0

这似乎只适用于.class文件 – sworded 2012-04-11 19:11:03