Файл Java file.createNewFile не создан и исключений не возникает

Следующий код не всегда создает файл. Насколько я заметил, при первом запуске этого кода, хотя исключение не выдается и createdFileSucceeded == true, файл не создается.

Я запускаю код в Windows, java 6.

Любой ввод может быть полезен

File file = new File(tmpDir, fileName);

try {
if (tmpDir == null) {
  String environmentHomePath // = somePath;
  tmpDir = new File(environmentHomePath, "SampleDumps");

  if (! tmpDir.exists() || ! tmpDir.isDirectory()) {
    boolean mkdirSucceeded = tmpDir.mkdir();
    if (! mkdirSucceeded) {
      throw new IOException("Failed creating directory: '" + tmpDir.getAbsolutePath() + "'");
    }
  }
}

if (file.exists()) {
  boolean deleteFileSucceeded = file.delete(); 
  if (! deleteFileSucceeded) {
    throw new IOException("Unable to delete pre existing sample file: '" + fileName + "'");
  }
}

boolean createFileSucceeded = file.createNewFile();
if (! createFileSucceeded) {
  throw new IOException("Unable to create sample file: '" + fileName + "'");
}

fw = new FileWriter(file);
bw = new BufferedWriter(fw);

StringBuilder sb = new StringBuilder("something...");

bw.write(sb.toString());
bw.flush();
}
catch (IOException ioe) {
log.warn("Unable to file invalid sample to file: '" + fileName + "'", ioe);
}
finally {
if (bw != null) {
  try {
    bw.close();
  } catch (IOException e) {
    log.warn("Unable to close Writer to file: '" + fileName + "'", e);
  }
}
else if (fw != null) {
  try {
    fw.close();
  } catch (IOException e) {
    log.warn("Unable to close Writer to file: '" + fileName + "'", e);
  }
}
}
5
задан Jasmin Meg 1 April 2012 в 15:59
поделиться