मैं कैसे पता लगा सकता हूं कि java.io.File.mkdir () झूठी क्यों लौटता है

मैं कैसे पता लगा सकता हूं कि क्यों java.io.File.mkdir() false लौटाता है। मैं मैन्युअल रूप से निर्देशिका बना सकता हूं।

अद्यतन करें: मेरा कोड इस तरह दिखता है:

String directoryName = "C:/some/path/";
File directory= new File(directoryName );
if (!directory.exists() && !directory.mkdir()) {
    throw new RuntimeException("Failed to create directory: " + directoryName);
}
0
जोड़ा संपादित
विचारों: 1
क्या आपने जांच की है कि क्या आप कोशिश करने और इसे बनाने से पहले निर्देशिका मौजूद है?
जोड़ा लेखक Holly Cummins, स्रोत

5 उत्तर

जवाब सरल है, आप नेस्टेड फ़ोल्डरों (फ़ोल्डर के अंदर एक फ़ोल्डर) बनाने की कोशिश कर रहे हैं। नेस्टेड फ़ोल्डर्स के लिए File.mkdirs() का उपयोग करें। वह काम करता है, (परीक्षण)।

0
जोड़ा

cygwin का उपयोग करना?

mkdir झूठी वापसी कर सकता है, लेकिन वैसे भी फ़ोल्डर बनाने के लिए आगे बढ़ें। झूठा केवल यह इंगित करता है कि फ़ोल्डर मौजूद नहीं है, फिर भी।

mkdir() कॉल (या यहां तक ​​कि mkdirs() ) के बाद आपको directory.exists() आज़माएं

0
जोड़ा

मुझे नहीं लगता कि आप जावा से कम से कम नहीं कर सकते हैं। चूंकि ओएस यह दृढ़ संकल्प करता है, जावा बस इसे प्रस्तुत कर रहा है और परिणाम लौटा रहा है।

क्या आपने यह सुनिश्चित करने का प्रयास किया है कि आपकी फ़ाइल ऑब्जेक्ट उस बिंदु को इंगित कर रही है जहां आप सोचते हैं?

अपडेट करें: यदि सी:/कुछ मौजूद नहीं है, तो पहले इसे सी:/कुछ/पथ बनाने का प्रयास करने से पहले इसे बनाया जाना चाहिए। या mkdirs() का उपयोग करें जैसा कि इंगित किया गया था।

0
जोड़ा
किसने कहा कि आप जावा में mkdir नहीं कर सकते?
जोड़ा लेखक Buhake Sindi, स्रोत
उद्धरण: <�कोड> मुझे नहीं लगता कि आप कम से कम जावा से नहीं कर सकते हैं। यह बिल्कुल सही नहीं है।
जोड़ा लेखक Buhake Sindi, स्रोत
सवाल यह था: "मैं कैसे पता लगा सकता हूं कि java.io.File.mkdir() झूठी क्यों लौटता है", इसलिए मैंने इसका उत्तर दिया, "मुझे नहीं लगता कि आप [पता लगाना]"
जोड़ा लेखक Jonathan W, स्रोत
वह कह रहा है कि आप क्यों यह विफल नहीं हो सकते हैं।
जोड़ा लेखक koregan, स्रोत

आपको mkdirs() </कोड> यदि मूल फ़ोल्डर ( कुछ आपके उदाहरण में) पहले से मौजूद नहीं है।

0
जोड़ा

यदि आप विंडोज़ के लिए प्रक्रिया मॉनीटर जैसे कुछ का उपयोग करते हैं, तो आप इसका उपयोग कर सकते हैं निर्देशिका बनाने के लिए ओएस स्तर के प्रयास को देखें।

इससे आपको वह जानकारी मिल सकती है जो आपको चाहिए।

आपको शायद प्रक्रिया मॉनिटर में फ़िल्टर का उपयोग करने की आवश्यकता होगी क्योंकि आमतौर पर बहुत सी डिस्क गतिविधि चल रही है :)

0
जोड़ा