public static String toString(DosFileAttributes dosFileAttributes) { StringBuilder sb = new StringBuilder(); sb.append(dosFileAttributes.isReadOnly() ? "r" : "-"); sb.append(dosFileAttributes.isHidden() ? "h" : "-"); sb.append(dosFileAttributes.isArchive() ? "a" : "-"); sb.append(dosFileAttributes.isSystem() ? "s" : "-"); return sb.toString(); }
Path file = ...; try { DosFileAttributes attr = Attributes.readDosFileAttributes(file); System.out.println("isReadOnly is " + attr.isReadOnly()); System.out.println("isHidden is " + attr.isHidden()); System.out.println("isArchive is " + attr.isArchive()); System.out.println("isSystem is " + attr.isSystem()); } catch (IOException x) { System.err.println("DOS file attributes not supported:" + x); }
Files.setAttribute(filePath, "dos:hidden", dosAttrs.isHidden()); Files.setAttribute(filePath, "dos:archive", dosAttrs.isArchive()); Files.setAttribute(filePath, "dos:system", dosAttrs.isSystem());
assertTrue(dosAttrsRHAS.isHidden()); assertTrue(dosAttrsRHAS.isArchive()); assertTrue(dosAttrsRHAS.isSystem()); assertTrue(dosAttrsRHA.isHidden()); assertTrue(dosAttrsRHA.isArchive()); assertFalse(dosAttrsRHA.isSystem()); assertTrue(dosAttrsRH.isHidden()); assertFalse(dosAttrsRH.isArchive()); assertFalse(dosAttrsRH.isSystem()); assertFalse(dosAttrsR.isHidden()); assertFalse(dosAttrsR.isArchive()); assertFalse(dosAttrsR.isSystem()); assertFalse(dosAttrsNone.isHidden()); assertFalse(dosAttrsNone.isArchive()); assertFalse(dosAttrsNone.isSystem()); assertTrue(dosAttrsH.isHidden()); assertFalse(dosAttrsH.isArchive()); assertFalse(dosAttrsH.isSystem()); assertFalse(dosAttrsCorrect.isHidden()); assertFalse(dosAttrsCorrect.isArchive()); assertFalse(dosAttrsCorrect.isSystem());
Path srcFile = Paths.get("test"); DosFileAttributes dfa = Files.readAttributes(srcFile, DosFileAttributes.class); System.out.println("isSystem? " + dfa.isSystem());
Path srcFile = Paths.get("myDirectory"); DosFileAttributes dfa = Files.readAttributes(srcFile, DosFileAttributes.class); System.out.println("System File? " + dfa.isSystem()); System.out.println("Hidden File? " + dfa.isHidden());
@Override public Object readAttribute(AttributeReadContext context) throws IOException { return context.getDosFileAttributes().isSystem(); }
File root = new File("C:\\"); File[] files = root.listFiles(new FileFilter() { @Override public boolean accept(File file) { Path path = Paths.get(file.getAbsolutePath()); DosFileAttributes dfa; try { dfa = Files.readAttributes(path, DosFileAttributes.class); } catch (IOException e) { // bad practice return false; } return (!dfa.isHidden() && !dfa.isSystem()); } });
linkedHashMap.put("Is Hidden File?", dosFileAttr.isHidden() ? "True" : "False"); linkedHashMap.put("Is ReadOnly?", dosFileAttr.isReadOnly() ? "True" : "False"); linkedHashMap.put("Is System File?", dosFileAttr.isSystem() ? "True" : "False");
dosView.setArchive(dosAttributes.isArchive()); dosView.setHidden(dosAttributes.isHidden()); dosView.setSystem(dosAttributes.isSystem()); dosView.setReadOnly(dosAttributes.isReadOnly());
fileAttribute |= FileAttributeFlags.FILE_ATTRIBUTE_REPARSE_POINT .getValue(); if (attr.isSystem()) fileAttribute |= FileAttributeFlags.FILE_ATTRIBUTE_SYSTEM .getValue();
targetDosAttrs.setHidden(sourceDosAttrs.isHidden()); targetDosAttrs.setReadOnly(sourceDosAttrs.isReadOnly()); targetDosAttrs.setSystem(sourceDosAttrs.isSystem());
targetDosAttrs.setHidden(sourceDosAttrs.isHidden()); targetDosAttrs.setReadOnly(sourceDosAttrs.isReadOnly()); targetDosAttrs.setSystem(sourceDosAttrs.isSystem());
targetDosAttrs.setHidden(sourceDosAttrs.isHidden()); targetDosAttrs.setReadOnly(sourceDosAttrs.isReadOnly()); targetDosAttrs.setSystem(sourceDosAttrs.isSystem());