0

在 Java 中,我有一个File代表文件夹的对象:

String folderName = "/home/vektor/folder";
File folder = new File(folderName);

现在我想File在这个文件夹中创建另一个代表一个文件。我想避免像这样进行字符串连接:

String fileName = "test.txt";
File file = new File(folderName + "/" + fileName);

因为如果我更深入地创建这个结构,我会想出这样的东西:

File deepFile = new File(folderName + "/" + anotherFolderName + ... + "/" + fileName);

相反,我想做类似的事情

File betterFile = folder.createUnder(fileName);

甚至:

File otherFile = SomeFileUtils.createFileInFolder(folder, fileName);

你知道这样的解决方案吗?

注意:使用“/”是完全可以的,因为 Java 会将它转换为 Windows 的“\”,但它并不干净——我应该使用类似"file.separator"from 的东西System.getProperties()

4

2 回答 2

2

我会用

String folderName = 
String fileName = 

File under = new File(folderName, fileName);

或者

File folderFile = 
String fileName = 

File under = new File(folderFile, fileName);

就那么简单 ;)

于 2012-11-01T10:45:03.117 回答
2

查看File 的 Javadoc,您将看到构造函数将File对象作为父对象。

使用以下表格:

File deepFile = new File(folder, fileName);
于 2012-11-01T10:52:44.897 回答