मेरे पास एक ऐसा ऑब्जेक्ट लिखने का कार्य है जो एक अलग प्रकार के पथ/यूआरएल प्राप्त कर सकता है, और यह किस प्रकार का पथ/यूआरएल वापस कर सकता है। उदाहरण के लिए पथशारीरिक, सापेक्ष, पूर्ण और अन्य पथ
1. [drive]:\Temp
2. \\Temp
3. Temp (assuming that it relative Temp),
4. /Temp
5. ~/Temp
6. file://[drive]:/Temp
7. file://Temp
8. [scheme]://something/Temp
... और इसी तरह से हो सकता है।
यदि मैं भौतिक पथ, सापेक्ष यूआरएल, या पूर्ण यूआरएल है तो मैं C#
में कैसे देख सकता हूं?
मुझे लगता है कि यह अपेक्षाकृत आसान है कि यह सापेक्ष या पूर्ण यूरी है, लेकिन यह कैसे जानना है कि यह यूएनसी पथ है या नहीं?
मैंने उरी ऑब्जेक्ट का उपयोग करने की कोशिश की और यह आईएसयूएनसी संपत्ति है, लेकिन यह वास्तव में मेरी मदद नहीं करता है .... c: \ temp यह झूठा लौटाता है, "/ temp", "temp /" और "temp" के लिए यह फेंकता है एक अपवाद है कि प्रारूप गलत है। .NET 3.5
में किसी भी निर्मित ऑब्जेक्ट में मौजूद है जो मुझे इसके साथ मदद कर सकता है, या पथ के प्रकार को निर्धारित करने के लिए मैं किस एल्गोरिदम का उपयोग कर सकता हूं?
खैर है, "/ अस्थायी" वास्तव में एक यूआरआई बिल्कुल नहीं है। आप जिस सटीक प्रारूप को देखना चाहते हैं वह क्या है? यदि यह केवल पथ और यूआरआई है, तो आप पहले उनके बीच अंतर कर सकते हैं, और प्रत्येक के लिए अलग-अलग तकनीकों को लागू कर सकते हैं। – Vlad
क्यों "/ temp" मान्य यूआरआई नहीं है? मुझे लगता है कि इसे सापेक्ष के रूप में व्याख्या किया जा सकता है। मुझे उन सभी प्रारूपों की जांच करने और यह तय करने की ज़रूरत है कि यह किस प्रकार है ... क्या यह यूएनसी पथ है या यह यूआरआई पथ है ... मैं उनके बीच अंतर कैसे कर सकता हूं? –
ठीक है, http://tools.ietf.org/html/rfc3986। यह एक योजना के साथ शुरू नहीं होता है, उदाहरण के लिए (http: या फ़ाइल: करेगा) – Vlad