2013-09-23 6 views
5

फ़ाइल करने के लिए कस्टम विशेषता या मेटाडेटा जोड़ें, मेरे पास ऐसी फ़ाइलें हैं जिन्हें "एन्क्रिप्शन प्रयुक्त" नामक अतिरिक्त विशेषता की आवश्यकता होती है। लेकिन यह "अवैध अवैधकरण" देता है। मुझे पता है कि यह त्रुटि क्यों देता है, "एन्क्रिप्शन प्रयुक्त" को एक विशेषता के रूप में नहीं जाना जाता है, लेकिन क्या ऐसा कोई तरीका है जिससे मैं इसे मजबूर कर सकता हूं? या फ़ाइल में कस्टम मेटाडेटा जोड़ें?जावा

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

क्या यह विशेषता का अर्थ है कि फ़ाइल 'encdec.properties' एन्क्रिप्ट की गई है? –

उत्तर

4

अपने फाइल सिस्टम उपयोगकर्ता परिभाषित (उर्फ विस्तारित) का समर्थन करता है, तो जिम्मेदार बताते हैं, तो स्थापित करने के लिए एक इस तरह होगा जिस तरह से:

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

setAttribute के लिए javadoc के रूप में बताते हैं, 2 तर्क लेता वैकल्पिक का नाम देखें और एक विशेषता का नाम। इस मामले में, आपको UserDefinedFileAttributeView का उपयोग करने की आवश्यकता है जिसका दृश्य-नाम "उपयोगकर्ता" है।

ध्यान दें कि विभिन्न फ़ाइल सिस्टम प्रकार अलग-अलग विशेषता दृश्यों का समर्थन करते हैं, और आपकी फ़ाइल सिस्टम इस का समर्थन नहीं कर सकता है।