2011-09-16 4 views
12

मुझे आमतौर पर NSBundle का उपयोग करके पथ मिलते हैं।दस्तावेज़ निर्देशिका में फ़ाइलों के लिए सभी पथ कैसे प्राप्त करें?

लेकिन, NSBundle में दस्तावेज़ फ़ोल्डर नहीं है।

दस्तावेज़ निर्देशिका में फ़ाइलों के लिए सभी पथ (या नाम) कैसे प्राप्त करें?

उत्तर

30

यह दस्तावेज निर्देशिका के अंतर्गत

NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 

    NSArray *filePathsArray = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:documentsDirectory error:nil]; 

    NSLog(@"files array %@", filePathsArray); 

यू सभी फ़ाइलों के लिए पथ दे देंगे आप नीचे दिए गए कोड

NSString *filePath = [documentsDirectory stringByAppendingPathComponent:[filePathsArray objectAtIndex:0]]; 
0
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *documentsDirectory = [paths objectAtIndex:0]; 

कि से फाइल पाने के लिए आपको पथ संरचना प्रदान करने में है ...

NSString *fileName = @"default.png"; 
    NSString *folderPath = [documentsDirectory stringByAppendingPathComponent:@"%@", fileName]; 

folderPath दी फ़ाइल नाम के स्थान वापस आ जाएगी।

+0

फ़ाइलें प्रिंट होगा। – ChangUZ

+0

मैंने कोड संशोधित किया है, इसे जांचें। –

+0

क्षमा करें, मैं doc-dir में सभी फ़ाइलों के लिए पथ या नाम जानना चाहता हूं- फ़ाइल नाम नहीं दिया गया। – ChangUZ

0

यहाँ स्विफ्ट में है का उपयोग करके filePathsArray में प्रत्येक वस्तु के लिए पथ प्राप्त कर सकते हैं।
प्रिंट बयान दस्तावेज़ निर्देशिका, नहीं दस्तावेज़ निर्देशिका में सभी उपलब्ध रास्तों

func getDocumentsDirectory() -> URL { 
    let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask) 
print("Paths - \(paths)") 
    let documentsDirectory = paths[0] 
    return documentsDirectory 
} 
संबंधित मुद्दे