2013-09-23 12 views
5

Mam pliki, które wymagają dodatkowego atrybutu o nazwie "używane szyfrowanie". Ale to daje "IllegalArgumentExeption". Wiem, dlaczego daje ten błąd, "szyfrowanie używane" nie jest znane jako atrybut, ale czy istnieje sposób, w jaki mogę go wymusić? Lub dodać niestandardowe metadane do pliku?dodaj niestandardowy atrybut lub metadane do pliku java

Path path = new File("/propertyfiles/encdec.properties").toPath(); 

    try{ 
     Files.setAttribute(path, "encryption used", "testtesttest"); 
    }catch(IOException e){ 
     System.out.println(e.getMessage()); 
    } 
    try{ 
     System.out.println(Files.getAttribute(path, "encryption used")); 
    }catch(IOException e){ 
     System.out.println(e.getMessage()); 
    } 
+0

Czy ten atrybut oznacza, że ​​plik 'encdec.properties' jest zaszyfrowany? –

Odpowiedz

4

Jeśli system plików obsługuje definiowane przez użytkownika (aka rozszerzony) atrybutów, a następnie drogę, aby ustawić jeden byłby tak:

Files.setAttribute(path, "user:encryption used", "testtesttest"); 

Jako javadoc dla setAttribute wyjaśnia, 2. Argument trwa w formie opcjonalnej nazwa-widoku i nazwa atrybutu. W takim przypadku musisz użyć nazwy UserDefinedFileAttributeView, której nazwa widoku to "user".

Należy pamiętać, że różne typy systemów plików obsługują różne widoki atrybutów, a system plików może nie obsługiwać tego systemu przez.

Powiązane problemy