जावा प्रोग्राम दो पूर्ण पथों से संबंधित पथ प्राप्त करने के लिए

इस उदाहरण में, हम स्ट्रिंग तरीकों, URI वर्ग, और java.nio.file पैकेज का उपयोग करके जावा में दो पूर्ण पथों से सापेक्ष पथ प्राप्त करना सीखेंगे।

उदाहरण 1: URI वर्ग का उपयोग करके दो पूर्ण पथों से एक सापेक्ष पथ प्राप्त करें

 import java.io.File; import java.net.URI; class Main ( public static void main(String() args) ( try ( // Two absolute paths File absolutePath1 = new File("C:\Users\Desktop\Programiz\Java\Time.java"); System.out.println("Absolute Path1: " + absolutePath1); File absolutePath2 = new File("C:\Users\Desktop"); System.out.println("Absolute Path2: " + absolutePath2); // convert the absolute path to URI URI path1 = absolutePath1.toURI(); URI path2 = absolutePath2.toURI(); // create a relative path from the two paths URI relativePath = path2.relativize(path1); // convert the URI to string String path = relativePath.getPath(); System.out.println("Relative Path: " + path); ) catch (Exception e) ( e.getStackTrace(); ) ) )

आउटपुट

 निरपेक्ष Path1: C: Users Desktop Programiz Java Time.java Absolute Path2: C: Users Desktop Relative Path: Programiz / Java / Time.java

उपर्युक्त उदाहरण में, हमारे पास परमपथ 1 और निरपेक्षपथ 2 नामक दो पूर्ण पथ हैं। हमने यूआरआई वर्ग का उपयोग निरपेक्ष पथों को सापेक्ष पथ में परिवर्तित करने के लिए किया है।

  • तोरी () - Fileवस्तु को उड़ी में परिवर्तित करता है
  • relativize () - दो निरपेक्ष पथों की एक दूसरे से तुलना करके आपेक्षिक पथ को निकालता है
  • getPath () - उड़ी को एक स्ट्रिंग में परिवर्तित करता है

अनुशंसित पढ़ना :

  • जावा फ़ाइल
  • जावा यूआरआई वर्ग

उदाहरण 2: स्ट्रिंग विधियों का उपयोग करके दो पूर्ण पथ से एक सापेक्ष पथ प्राप्त करें

 import java.io.File; class Main ( public static void main(String() args) ( // Create file objects File file1 = new File("C:\Users\Desktop\Programiz\Java\Time.java"); File file2 = new File("C:\Users\Desktop"); // convert file objects to string String absolutePath1 = file1.toString(); System.out.println("Absolute Path1: " + absolutePath1); String absolutePath2 = file2.toString(); System.out.println("Absolute Path2: " + absolutePath2); // get the relative path String relativePath = absolutePath1.substring(absolutePath2.length()); System.out.println("Absolute Path: " + relativePath); ) )

आउटपुट

 निरपेक्ष Path1: C: Users Desktop Programiz Java Time.java Absolute Path2: C: Users Desktop पूर्ण पथ: Programiz Java Time.java

उपरोक्त उदाहरण में, हमने फ़ाइल पथों को स्ट्रिंग में बदल दिया है। अभिव्यक्ति पर ध्यान दें,

 absolutePath1.substring(absolutePath2.length())

यहां, substring()विधि निरपेक्षपाठ ​​1 के भाग को पूर्णांक 2 की लंबाई के बराबर सूचकांक से शुरू करती है । यही है, निरपेक्षपथ 2 द्वारा दर्शाया गया स्ट्रिंग निरपेक्षता 1 से हटा दिया गया है।

कैसे काम करता है के बारे में अधिक जानने के लिए, जावा स्ट्रिंग प्रतिस्थापन () देखें।

उदाहरण 3: java.nio.file पैकेज का उपयोग करके दो पूर्ण पथों से एक सापेक्ष पथ प्राप्त करें

 import java.nio.file.Path; import java.nio.file.Paths; class Main ( public static void main(String() args) ( // Create file objects Path absolutePath1 = Paths.get("C:\Users\Desktop\Programiz\Java\Time.java"); Path absolutePath2 = Paths.get("C:\Users\Desktop"); // convert the absolute path to relative path Path relativePath = absolutePath2.relativize(absolutePath1); System.out.println("Relative Path: " + relativePath); ) )

आउटपुट

 Relative Path: ProgramizJavaTime.java

उपरोक्त उदाहरण में, हमने दो निरपेक्ष पथों से एक सापेक्ष पथ प्राप्त करने के लिए इंटरफ़ेस की relativize()विधि का उपयोग किया है Path

अनुशंसित रीडिंग :

  • जावा पथ कक्षा
  • जावा पथ इंटरफ़ेस

दिलचस्प लेख...