Java Path Delete nio delete(@Nullable Path path)

Here you can find the source of delete(@Nullable Path path)

Description

delete

License

Open Source License

Declaration

public static void delete(@Nullable Path path) throws IOException 

Method Source Code

//package com.java2s;
//License from project: Open Source License 

import javax.annotation.Nonnull;
import javax.annotation.Nullable;
import java.io.IOException;
import java.nio.file.*;
import java.nio.file.attribute.BasicFileAttributes;

import static java.nio.file.FileVisitResult.CONTINUE;
import static java.nio.file.Files.*;

public class Main {
    public static void delete(@Nullable Path path) throws IOException {
        if (path == null || !exists(path)) {
            return;
        }// w  w  w. jav  a 2 s . c om
        if (isRegularFile(path)) {
            doDelete(path);
            return;
        }
        walkFileTree(path, new SimpleFileVisitor<Path>() {
            @Override
            public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
                doDelete(file);
                return CONTINUE;
            }

            @Override
            public FileVisitResult postVisitDirectory(Path dir, IOException exc) throws IOException {
                doDelete(dir);
                return CONTINUE;
            }
        });
    }

    private static void doDelete(@Nonnull Path path) throws IOException {
        final FileStore fileStore = Files.getFileStore(path);
        if (fileStore.supportsFileAttributeView("dos")) {
            setAttribute(path, "dos:readonly", false);
            setAttribute(path, "dos:system", false);
            setAttribute(path, "dos:hidden", false);
        }
        Files.delete(path);

    }
}

Related

  1. cleanUp(boolean isDeleteOriginalFiles, Path[] filesToZip)
  2. clearAndDeleteDirecotry(Path path)
  3. createDeleteOnExitFile(Path path)
  4. delete(final Path path)
  5. delete(final String[] paths)
  6. delete(Path path)
  7. delete(Path path)