मेरे पास दो संसाधन फ़ोल्डर हैं।जावा प्रोग्रामेटिक रूप से संसाधनों/स्रोत फ़ोल्डर में फ़ाइल बनाएँ?
src - यहाँ कर रहे हैं मेरी संसाधन फ़ाइलें (छवियों, .properties) फ़ोल्डर (संकुल) में आयोजित किया - यहाँ मेरी जावा फ़ाइलों
संसाधन हैं।
क्या प्रोग्राम संसाधन में प्रोग्रामिंग रूप से एक और .properties फ़ाइल जोड़ने का कोई तरीका है?
मैं कुछ इस तरह की कोशिश की:
public static void savePropertiesToFile(Properties properties, File propertiesFile) throws IOException {
FileOutputStream out = new FileOutputStream(propertiesFile);
properties.store(out, null);
out.close();
}
और बनाया है कि इससे पहले कि:
new File("/folderInResources/newProperties.properties");
लेकिन यह फाइल सिस्टम पर है कि पथ के लिए लग रहा है। संसाधन फ़ोल्डर में देखने के लिए मैं इसे कैसे मजबूर कर सकता हूं?
संपादित करें: मुझे यह कहना है कि इसके बारे में क्या है। मेरे पास एक जीयूआई एप्लीकेशन है और मैं 2 भाषाओं का समर्थन करता हूं (2। संसाधन फ़ोल्डर में प्रॉपर्टीज फाइलें)। अब मैंने एक विकल्प जोड़ा है कि उपयोगकर्ता आसानी से एप्लिकेशन का अनुवाद कर सकता है और जब वह समाप्त होता है तो मैं उस छिपे हुए फ़ोल्डर में डिस्क पर उस नई .properties को सहेजता हूं और इसे वहां से पढ़ता हूं। लेकिन मैं उम्मीद कर रहा था कि मैं मौजूदा भाषाओं (संसाधन फ़ोल्डर) के बगल में उस नई .properties फ़ाइलों (नई भाषा) को बचा सकता हूं। मेरे पास एक स्थिर संदेश वर्ग है जो जानता है कि डिस्क से संसाधनों को लोड करने और संसाधन फ़ोल्डर में डिफ़ॉल्ट दोनों को कैसे लोड किया जाए। लेकिन यदि उपयोगकर्ता किसी अन्य मशीन पर यह .jar फ़ाइल लेता है, तो उसके पास उस नई भाषा नहीं होगी क्योंकि वे उस कंप्यूटर पर डिस्क पर हैं, अंदर नहीं .jar फ़ाइल।
@ Thorbjørn Ravn Andersen यदि मैं इसे आजमाता हूं: 'MyClass.class.getClassLoader()' मुझे कोई भी तरीका नहीं दिख रहा है जो मुझे कुछ रास्ता देगा। – vale4674
आप संसाधन नहीं लिख सकते हैं। हालांकि, आपके पास एक क्लास लोडर हो सकता है जो फ़ाइल सिस्टम से संसाधन लोड करता है। –