URL
यूनिट परीक्षणों के उद्देश्य से मैं स्थानीय फ़ाइल का उपयोग करके एक नई वस्तु कैसे बना सकता हूं ?
URL
यूनिट परीक्षणों के उद्देश्य से मैं स्थानीय फ़ाइल का उपयोग करके एक नई वस्तु कैसे बना सकता हूं ?
जवाबों:
जावा 7 का उपयोग करना:
Paths.get(string).toUri().toURL();
हालाँकि, आप शायद एक प्राप्त करना चाहते हैं URI
। जैसे, एक URI
शुरुआत होती है, file:///
लेकिन एक URL जिसके साथ file:/
(कम से कम, वह toString
पैदा करता है)।
java.nio.file.Paths
। इसके अलावा, कृपया स्पष्ट करें कि आप "यूआरआई बनाम यूआरएल" में कार्यान्वयन का मतलब है । अनीव java.net.URL.toString()
यूनिक्स पर एक ही चीज का उत्पादन करता है, जैसा कि यह होना चाहिए। यह केवल एक "/" दिखाता है जो बहुत गलत है ( फ़ाइल URI स्कीम देखें )। मुझे लगता है कि यह जावा में कारणों, बेहतर उपयोग के कारण है java.net.URI
। यह एक कॉल पर "फाइल: // [होस्ट] /" को सही ढंग से जनरेट करता है .toString()
।
new URL("file:///your/file/here")
/your/file/here
यूनिक्स / लिनक्स पर एक फ़ाइल के लिए एक निरपेक्ष पथ है। विंडोज पर मुझे लगता है कि यह अलग होगा।
new URL("file:my.properties");
File myFile=new File("/tmp/myfile");
URL myUrl = myFile.toURI().toURL();
पूर्ण सिंटैक्स के लिए यहां देखें: http://en.wikipedia.org/wiki/File_URI_scheme
यूनिक्स जैसी प्रणालियों के लिए यह @Alex के अनुसार होगा, file:///your/file/here
जबकि विंडोज सिस्टम के लिए होगाfile:///c|/path/to/file
File.toURI().toURL()
जाने का रास्ता है
.properties
फ़ाइल में होता है।
java file url
, जो मेरे मामले में इसका मतलब है कि मैं एक file://
URL के प्रारूप के लिए खोज रहा था , जावा में, एक .properties
फ़ाइल में उपयोग करने के लिए, या मैन्युअल रूप से टाइप करने के लिए, आदि
file://
दुर्भाग्य से आवश्यक है। सिस्टम निर्भर होना इतना बड़ा मुद्दा नहीं है क्योंकि यह एक परस्पर संपत्ति है।
आप भी उपयोग कर सकते हैं
[AnyClass].class.getResource(filePath)
jar:file:/home/user/a/b/c/foo.jar!/com/example/stuff/config.txt
।