Закройте файл, созданный с помощью FileOutputStream, для следующего удаления

В настоящее время я сталкиваюсь с некоторой проблемой с FileOutputStream в моем коде Java.

На самом деле я использую FileOutputStream для создания файла, но затем, когда файл создан, его невозможно удалить. Насколько я мог понять, это может быть связано с тем, что FileOutputstream не закрыт.

Ниже мой обобщенный код:

     outFile = new FileOutputStream(dir+"\\"+fileName);
     outFile.write("Test");
     outFile.flush();
     outFile.close();
     outFile = null;
     System.gc();

Тогда нет никакого способа удалить файл, даже "вручную". Когда моя программа запущена, я не могу удалить ее в Windows простым нажатием кнопки Del. Я также пытался удалить содержимое папкиdir и это не сработало, используя этот код:

static public void delDir( String place )

{
    File path = new File( place );
    System.out.println(path.exists());//return true
    if( path.exists() )
        {
        File[] f = path.listFiles();
        for( int j = 0 ; j < f.length ; j++ )
            {
            if( f[ j ].isDirectory() )
                {
                deleteDirectory( path+"\\"+f[ j ] );
                }
            f[ j ].delete();
            }
        }
}

So my question is : How to close this file for a next delete (or how to delete it properly if we can't close it)?

Ответы на вопрос(7)

Ваш ответ на вопрос