如何用Java创建目录?

如何用Java创建目录?,java,directory,external-sorting,Java,Directory,External Sorting,我正在尝试创建一个新的文件目录,但是函数mkdir()不起作用,mkdirs()也不起作用 这是我的密码: ... while (leitor.hasNext()){ String [] plv = LerPalavras(tamMem, leitor); Arrays.sort(plv); String nomeTemp = "/temp/temp" + contador + ".txt"; // I need to create this direct

我正在尝试创建一个新的文件目录,但是函数
mkdir()
不起作用,
mkdirs()
也不起作用

这是我的密码:

...
  while (leitor.hasNext()){
      String [] plv = LerPalavras(tamMem, leitor);
      Arrays.sort(plv);
      String nomeTemp = "/temp/temp" + contador + ".txt"; // I need to create this directory
      try{
        escritor = new FileWriter(nomeTemp);
        for (int i = 0; i < tamMem; i++) {
          escritor.write(plv[i] + " ");
        }
        escritor.close();
      } catch (IOException e){
        System.out.println(e.getMessage());
      }
      contador++;
    }
...
。。。
while(leitor.hasNext()){
字符串[]plv=LerPalavras(tamMem,leitor);
数组。排序(plv);
字符串nometep=“/temp/temp”+contador+“.txt”//我需要创建这个目录
试一试{
escritor=新文件写入程序(nometep);
for(int i=0;i
编辑:我做了编辑,现在开始工作了

File pastaTemp = new File("/temp/temp");
    pastaTemp.mkdirs();

    while (leitor.hasNext()){
      String [] plv = LerPalavras(tamMem, leitor);
      Arrays.sort(plv);
      File arqTemp = new File (pastaTemp, contador + ".txt");
      try{
        escritor = new FileWriter(arqTemp);
        for (int i = 0; i < tamMem; i++) {
          escritor.write(plv[i] + " ");
        }
        escritor.close();
      } catch (IOException e){
        System.out.println(e.getMessage());
      }
      contador++;
    }
File pastaTemp=新文件(“/temp/temp”);
pastaTemp.mkdirs();
while(leitor.hasNext()){
字符串[]plv=LerPalavras(tamMem,leitor);
数组。排序(plv);
文件arqTemp=新文件(pastaTemp,contador+“.txt”);
试一试{
escritor=新文件编写器(arqTemp);
for(int i=0;i
尝试分两步执行此操作。首先,调用
File.mkdirs()
创建整个目录结构,如果需要,然后创建传递给
文件编写器的文件:

try {
    File folder = new File("/temp/temp");
    folder.mkdirs();
    // then create a file object at this location
    File file = new File(folder, contador + ".txt");

    escritor = new FileWriter(file);
    // the rest of your code
}
catch (Exception e) {
}

试着分两步进行。首先,调用
File.mkdirs()
创建整个目录结构,如果需要,然后创建传递给
文件编写器的文件:

try {
    File folder = new File("/temp/temp");
    folder.mkdirs();
    // then create a file object at this location
    File file = new File(folder, contador + ".txt");

    escritor = new FileWriter(file);
    // the rest of your code
}
catch (Exception e) {
}

new File(“/temp/temp”).mkdirs()
应该能够在根目录下创建目录结构
temp/temp
,假设它不存在,那么您可能需要先检查它。另一个问题是,您可能没有在根级别创建目录的权限,需要注意的是,在用户的主目录上下文中创建目录可能比在您询问的内容中创建目录更好,但这不是编写外部排序的正确方法。您需要查找替换选择。它生成的排序运行时间是您正在执行的两倍,这可以为您节省大量的合并时间,事实上整个合并过程都经过了。@EJP我不确定是否理解您所说的所有内容,但这是第一次查看文件,之后,我使用快速排序算法对这些文件进行排序。不管怎么说,这只是一个简单的大学作业算法,没什么大不了的哈哈
新文件(“/temp/temp”)。mkdirs()
应该能够在根目录下创建目录结构
temp/temp
,假设它还不存在,那么您可以先检查一下。另一个问题是,您可能没有在根级别创建目录的权限,需要注意的是,在用户的主目录上下文中创建目录可能比在您询问的内容中创建目录更好,但这不是编写外部排序的正确方法。您需要查找替换选择。它生成的排序运行时间是您正在执行的两倍,这可以为您节省大量的合并时间,事实上整个合并过程都经过了。@EJP我不确定是否理解您所说的所有内容,但这是第一次查看文件,之后,我使用快速排序算法对这些文件进行排序。不管怎样,这只是大学作业的一个简单算法,没什么大不了的haha@marianod323告诉我“它不起作用”不能让我帮你。我已经回答了你原来的问题。请不要像这样不断更新你的问题,因为它可能会吸引选票。对此我很抱歉。事实上,我真的很抱歉。它起作用了,我只是没有意识到这条路。我的错,再一次,对此感到抱歉,谢谢@玛丽:告诉我“它不起作用”我帮不了你。我已经回答了你原来的问题。请不要像这样不断更新你的问题,因为它可能会吸引选票。对此我很抱歉。事实上,我真的很抱歉。它起作用了,我只是没有意识到这条路。我的错,再一次,对此感到抱歉,谢谢!