创建一个目录,然后在其中创建文件

时间:2012-06-25 10:52:14

标签: java file-io directory objectoutputstream

我想为一个名为say" f"的文件创建一个ouputStreamWriter对象,说" out"。我希望这个文件f在名为" output"的目录或文件夹中创建。如果目录"输出"它不存在然后它应该创建它,如果它已经存在,那么它应该创建文件" f"在那个目录中。

简而言之,我希望目录名为"输出"然后我想在执行程序时将不同的文件放入其中。

有谁能告诉我如何在java中这样做?现在我的以下代码在当前的directoy中创建不同的文件。我想将所有文件放在一个文件夹中以方便我。

public Dump(String outputFile) throws IOException {
        final FileOutputStream fos = new FileOutputStream(outputFile + "gz.xml");
        final GZIPOutputStream gzfos = new GZIPOutputStream(fos);
        out = new OutputStreamWriter(new BufferedOutputStream(gzfos), "UTF-8");

    }

3 个答案:

答案 0 :(得分:2)

支持开箱即用:

final File f = new File("dir/file.txt");
f.getParentFile().mkdirs();
f.createNewFile();

答案 1 :(得分:0)

您最好的答案是查看公共IO库,尤其是FileUtils。它应涵盖您需要的大部分内容:

Commons IO Javadoc

答案 2 :(得分:0)

您好可以使用文件中的exists方法检查您的目录/文件是否全部存在,

File myOutputDir = new File("path");

if(!myOutputDir.exists())
     myOutputDir.mkdir(); //Returns a boolean if you want to check it was successful.
//Continue with your code the directory should now exist if it did not before.

干杯,

电子