我正在使用JUnit的TemporaryFolder类规则在JUnit运行期间创建一个临时文件夹。
@Rule
public TemporaryFolder folder = new TemporaryFolder();
folder.newFolder("NewFolder");
新文件夹将在以下路径中创建:
C:\Users\abc\abc\Local\Temp\junit991415299992369999\NewFolder
我正在寻找要在根目录下创建的新文件夹,例如:
C:\NewFolder
如何实现对Windows和Linux都有利的目标?
我在下面尝试
folder.newFolder("\\", "NewFolder"); // Same result
folder.newFolder("C:\\", "NewFolder"); // results in java.io.IOException: a folder with the name 'NewFolder' already exists. (Even though there is no existing folder with this name)
folder.newFolder("./", "NewFolder"); // creates at C:\Users\abc\abc\Local\Temp\junit991415299992369999\.\NewFolder
谢谢!
最佳答案
您必须使用其他根目录创建TemporaryFolder
。就像是
@Rule
public final TemporaryFolder folder = new TemporaryFolder(
new File("C:\\")
);
没有在Windows上对其进行测试,但我认为您明白了。