क्या किसी से पथ ऑब्जेक्ट प्राप्त करना संभव है java.io.File?
मुझे पता है कि आप toFile()विधि का उपयोग करके किसी फ़ाइल में पथ परिवर्तित कर सकते हैं , लेकिन मुझे विपरीत रूपांतरण नहीं मिला। जावा 6 या निम्न में ऐसा करने का कोई तरीका है?
क्या किसी से पथ ऑब्जेक्ट प्राप्त करना संभव है java.io.File?
मुझे पता है कि आप toFile()विधि का उपयोग करके किसी फ़ाइल में पथ परिवर्तित कर सकते हैं , लेकिन मुझे विपरीत रूपांतरण नहीं मिला। जावा 6 या निम्न में ऐसा करने का कोई तरीका है?
जवाबों:
हां, आप इसका Fileउपयोग करके ऑब्जेक्ट से प्राप्त कर सकते हैं File.toPath()। ध्यान रखें कि यह केवल जावा 7+ के लिए है। जावा संस्करण 6 और उसके नीचे यह नहीं है।
Pathजावा 7 में पेश किया गया था, इसलिए दुर्भाग्य से जावा 6 और नीचे में ऐसा करने का कोई तरीका नहीं है।
से प्रलेखन :
डिफ़ॉल्ट रूप से जुड़े पथ
providerआम तौर परjava.io.Fileवर्ग के साथ परस्पर जुड़े होते हैं । अन्य प्रदाताओं द्वारा बनाए गए रास्तों के द्वारा दर्शाए गए अमूर्त पथ के नामों के साथ अंतर होने की संभावना नहीं हैjava.io.File। विधि एक java.io.File वस्तु का प्रतिनिधित्व करती सार पथ नाम से एक पथ प्राप्त करने के लिए इस्तेमाल किया जा सकता है। परिणामी पथ को ऑब्जेक्ट के रूप में एक ही फ़ाइल पर संचालित करने के लिए उपयोग किया जा सकता है । इसके अलावा, विधि एक के प्रतिनिधित्व से निर्माण करने के लिए उपयोगी है ।toPathjava.io.FiletoFileFileStringPath
(जोर मेरा)
तो, इसके लिए toFile:
Fileइस पथ का प्रतिनिधित्व करने वाली एक वस्तु देता है ।
और toPath:
java.nio.file.Pathइस अमूर्त पथ से निर्मित वस्तु लौटाता है ।
आप चाहते हैं File.toPath()।
जैसा कि कई ने सुझाव दिया है, JRE v1.7 और ऊपर File.toPath () है;
File yourFile = ...;
Path yourPath = yourFile.toPath();
ओरेकल के jdk 1.7 प्रलेखन पर जो ऊपर अन्य पदों में भी उल्लिखित है, निम्नलिखित समकक्ष कोड कोपाथ () विधि के विवरण में वर्णित है, जो JRE v1.6 के लिए काम कर सकता है;
File yourFile = ...;
Path yourPath = FileSystems.getDefault().getPath(yourFile.getPath());