जवाबों:
किसी भी स्थिति में, मैं आपसे file.getParent()
(या file.getParentFile()
) उम्मीद करूँगा कि आप क्या चाहते हैं।
साथ ही, यदि आप पता लगाने के लिए कि क्या मूल चाहते हैं File
करता है मौजूद हैं और है एक निर्देशिका है, तो exists()
और isDirectory()
क्या आप के बाद कर रहे हैं।
यदि आप ऐसा कुछ करते हैं:
File file = new File("test.txt");
String parent = file.getParent();
parent
अशक्त हो जाएगा।
तो इस फ़ाइल की निर्देशिका प्राप्त करने के लिए आप आगे क्या कर सकते हैं:
parent = file.getAbsoluteFile().getParent();
फ़ाइल API File.getParent या File.getParentFile आपको फ़ाइल की निर्देशिका लौटा देनी चाहिए।
आपका कोड इस तरह होना चाहिए:
File file = new File("c:\\temp\\java\\testfile");
if(!file.exists()){
file = file.getParentFile();
}
आप अतिरिक्त रूप से अपनी मूल फ़ाइल की जाँच कर सकते हैं। File.isDirectory API का उपयोग करके निर्देशिका है
if(file.isDirectory()){
System.out.println("file is directory ");
}
File directory = new File("Enter any directory name or file name"); boolean isDirectory = directory.isDirectory(); if (isDirectory) { // It returns true if directory is a directory. System.out.println("the name you have entered is a directory : " + directory); //It returns the absolutepath of a directory. System.out.println("the path is " + directory.getAbsolutePath()); } else { // It returns false if directory is a file. System.out.println("the name you have entered is a file : " + directory); //It returns the absolute path of a file. System.out.println("the path is " + file.getParent()); }
code
अंतिम फ़ाइल फ़ाइल = नई फ़ाइल ("C: /dev/changeofseasons.mid"); System.out.println ("फ़ाइल मौजूद है?" + File.exists ()); System.out.println ("फ़ाइल की निर्देशिका:" + file.getAbsolutePath ()); ठीक है, लंगड़ा कर देने के लिए खेद है, मुझे नहीं लगता कि टिप्पणियों में कोड को प्रारूपित करना संभव है। फिर भी, आपका कोड स्पष्ट रूप से काम नहीं करता है।
File filePath=new File("your_file_path");
String dir="";
if (filePath.isDirectory())
{
dir=filePath.getAbsolutePath();
}
else
{
dir=filePath.getAbsolutePath().replaceAll(filePath.getName(), "");
}
your_file_path = "C:\\testfiles\\temp\\testfile";
- मुझे नहीं लगता कि यह आपको आशा देगा।