java directoryAndfileHide

userhhh / 2023-08-30 / 原文

java

import java.io.File;
import java.util.Scanner;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.attribute.DosFileAttributeView;
import java.nio.file.attribute.DosFileAttributes;

public class DirectoryandFileHIde {
    public static void main(String[] args) throws IOException{
//        Scanner sc = new Scanner(System.in);
//        String Path = sc.nextLine();
//        File file1 = new File(Path);

        File file = new File("D:/test","1.txt");
        File directory = new File(file.getParent());
        File filename = new File(file.getName());

        if(!directory.exists())
            directory.mkdirs();
        if(!filename.exists())
            filename.createNewFile();
        if(directory.isDirectory()) {
            System.out.println("Directory of "+ directory);
            String s[] = directory.list();
            for (int i = 0; i < s.length; i++) {
                File f = new File(directory+"/"+s[i]);
                if(f.isDirectory()){
                    //System.out.println(s[i] + " is a directory");
                    DosFileAttributeView dosView = Files.getFileAttributeView(f.toPath(), DosFileAttributeView.class);
                    DosFileAttributes dosFileAttributes = dosView.readAttributes();
                    if (!dosFileAttributes.isHidden()){
                        dosView.setHidden(true);
                    }
                }else if(f.isFile()){
                    //System.out.println(s[i] + " is a file");
                    DosFileAttributeView dosView = Files.getFileAttributeView(f.toPath(), DosFileAttributeView.class);
                    DosFileAttributes dosFileAttributes = dosView.readAttributes();
                    if (!dosFileAttributes.isHidden()){
                        dosView.setHidden(true);
                    }
                }else {
                    System.out.println(s[i] + " is not anything!");
                }
            }
        }
    }
}


2023-07-01 00:29 header